From 77a923e6a34a7160e13ff72ac419be0035d7813d Mon Sep 17 00:00:00 2001 From: Marc Mintel Date: Fri, 16 Jan 2026 19:46:49 +0100 Subject: [PATCH] website refactor --- .../core/PlaywrightAutomationAdapter.ts | 757 +----------------- .../core/PlaywrightBrowserSession.ts | 4 +- .../automation/core/WizardStepOrchestrator.ts | 20 +- .../application/ports/AdminUserRepository.ts | 2 +- .../use-cases/ListUsersUseCase.test.ts | 6 +- .../application/use-cases/ListUsersUseCase.ts | 6 +- core/admin/domain/entities/AdminUser.test.ts | 3 +- core/admin/domain/errors/AdminDomainError.ts | 2 +- .../repositories/AdminUserRepository.ts | 2 +- .../services/AuthorizationService.test.ts | 2 +- .../InMemoryAdminUserRepository.test.ts | 2 +- .../InMemoryAdminUserRepository.ts | 4 +- .../typeorm/mappers/AdminUserOrmMapper.ts | 10 +- .../TypeOrmAdminUserRepository.test.ts | 6 +- .../TypeOrmAdminUserRepository.ts | 8 +- .../use-cases/GetAnalyticsMetricsUseCase.ts | 2 +- .../use-cases/GetDashboardDataUseCase.ts | 2 +- .../use-cases/GetEntityAnalyticsQuery.test.ts | 8 +- .../use-cases/GetEntityAnalyticsQuery.ts | 8 +- .../use-cases/RecordEngagementUseCase.test.ts | 4 +- .../use-cases/RecordEngagementUseCase.ts | 2 +- .../use-cases/RecordPageViewUseCase.ts | 8 +- core/analytics/domain/entities/PageView.ts | 3 - .../AnalyticsSnapshotRepository.ts | 2 +- .../repositories/EngagementRepository.ts | 2 +- core/identity/EmailValidation.test.ts | 4 +- .../GetLeagueEligibilityPreviewQuery.test.ts | 6 +- .../GetLeagueEligibilityPreviewQuery.ts | 6 +- .../queries/GetUserRatingLedgerQuery.ts | 2 +- .../GetUserRatingsSummaryQuery.test.ts | 20 +- .../queries/GetUserRatingsSummaryQuery.ts | 4 +- .../AdminVoteSessionUseCases.test.ts | 14 +- .../AppendRatingEventsUseCase.test.ts | 4 +- .../use-cases/AppendRatingEventsUseCase.ts | 6 +- .../use-cases/CloseAdminVoteSessionUseCase.ts | 4 +- .../use-cases/ForgotPasswordUseCase.test.ts | 8 +- .../use-cases/ForgotPasswordUseCase.ts | 12 +- .../GetCurrentSessionUseCase.test.ts | 2 +- .../use-cases/GetCurrentSessionUseCase.ts | 2 +- .../use-cases/GetUserUseCase.test.ts | 4 +- .../application/use-cases/GetUserUseCase.ts | 8 +- .../use-cases/LoginUseCase.test.ts | 6 +- .../application/use-cases/LoginUseCase.ts | 10 +- .../use-cases/LoginWithEmailUseCase.ts | 4 +- .../application/use-cases/LogoutUseCase.ts | 6 +- .../use-cases/OpenAdminVoteSessionUseCase.ts | 2 +- ...RecomputeUserRatingSnapshotUseCase.test.ts | 12 +- ...aceRatingEventsUseCase.integration.test.ts | 10 +- .../RecordRaceRatingEventsUseCase.test.ts | 12 +- .../RecordRaceRatingEventsUseCase.ts | 4 +- .../use-cases/ResetPasswordUseCase.ts | 8 +- .../use-cases/SignupSponsorUseCase.test.ts | 4 +- .../use-cases/SignupSponsorUseCase.ts | 14 +- .../use-cases/SignupUseCase.test.ts | 6 +- .../application/use-cases/SignupUseCase.ts | 12 +- .../use-cases/SignupWithEmailUseCase.test.ts | 4 +- .../use-cases/SignupWithEmailUseCase.ts | 2 +- ...ernalGameRatingUseCase.integration.test.ts | 6 +- .../UpsertExternalGameRatingUseCase.test.ts | 10 +- .../UpsertExternalGameRatingUseCase.ts | 6 +- .../domain/entities/AdminVoteSession.test.ts | 2 +- .../ExternalGameRatingProfile.test.ts | 8 +- .../entities/ExternalGameRatingProfile.ts | 6 +- .../domain/entities/RatingEvent.test.ts | 8 +- .../domain/entities/SponsorAccount.test.ts | 1 + .../domain/entities/SponsorAccount.ts | 2 +- core/identity/domain/entities/User.test.ts | 1 + core/identity/domain/entities/User.ts | 4 +- .../domain/entities/UserAchievement.test.ts | 1 + .../domain/errors/IdentityDomainError.ts | 2 +- .../domain/repositories/AuthRepository.ts | 2 +- .../ExternalGameRatingRepository.test.ts | 8 +- .../RatingEventRepository.test.ts | 6 +- .../AdminTrustRatingCalculator.test.ts | 6 +- .../services/AdminTrustRatingCalculator.ts | 2 +- .../services/DrivingRatingCalculator.test.ts | 6 +- .../services/DrivingRatingCalculator.ts | 1 - .../services/EligibilityEvaluator.test.ts | 2 +- .../domain/services/EligibilityEvaluator.ts | 12 +- .../services/RatingEventFactory.test.ts | 2 +- .../domain/services/RatingEventFactory.ts | 8 +- .../services/RatingSnapshotCalculator.test.ts | 6 +- .../services/RatingSnapshotCalculator.ts | 2 +- .../services/RatingUpdateService.test.ts | 14 +- .../domain/services/RatingUpdateService.ts | 53 +- .../AdminTrustReasonCode.test.ts | 4 +- .../value-objects/DrivingReasonCode.test.ts | 4 +- .../domain/value-objects/EmailAddress.test.ts | 1 + .../domain/value-objects/EmailAddress.ts | 5 +- .../value-objects/ExternalRating.test.ts | 2 +- .../ExternalRatingProvenance.test.ts | 2 +- .../domain/value-objects/GameKey.test.ts | 2 +- .../domain/value-objects/PasswordHash.test.ts | 1 + .../domain/value-objects/PasswordHash.ts | 2 +- .../domain/value-objects/RatingDelta.test.ts | 2 +- .../value-objects/RatingDimensionKey.test.ts | 2 +- .../value-objects/RatingEventId.test.ts | 2 +- .../domain/value-objects/RatingEventId.ts | 2 +- .../value-objects/RatingReference.test.ts | 2 +- .../domain/value-objects/RatingValue.test.ts | 2 +- .../domain/value-objects/UserId.test.ts | 1 + core/identity/domain/value-objects/UserId.ts | 2 +- .../domain/value-objects/UserRating.test.ts | 1 + .../application/ports/AvatarGenerationPort.ts | 2 +- .../use-cases/DeleteMediaUseCase.ts | 4 +- .../application/use-cases/GetAvatarUseCase.ts | 2 +- .../application/use-cases/GetMediaUseCase.ts | 2 +- .../RequestAvatarGenerationUseCase.ts | 4 +- .../use-cases/ResolveMediaReferenceUseCase.ts | 2 +- .../use-cases/SelectAvatarUseCase.ts | 2 +- .../use-cases/UpdateAvatarUseCase.ts | 2 +- .../use-cases/UploadMediaUseCase.ts | 4 +- .../GetUnreadNotificationsUseCase.test.ts | 3 +- .../GetUnreadNotificationsUseCase.ts | 2 +- .../MarkNotificationReadUseCase.test.ts | 3 +- .../use-cases/MarkNotificationReadUseCase.ts | 2 +- .../NotificationPreferencesUseCases.test.ts | 1 + .../NotificationPreferencesUseCases.ts | 4 +- .../use-cases/SendNotificationUseCase.test.ts | 4 +- .../use-cases/SendNotificationUseCase.ts | 6 +- .../domain/entities/Notification.test.ts | 1 + .../entities/NotificationPreference.test.ts | 1 + .../domain/errors/NotificationDomainError.ts | 2 +- .../value-objects/NotificationId.test.ts | 3 +- .../domain/value-objects/QuietHours.test.ts | 1 + .../use-cases/AwardPrizeUseCase.test.ts | 6 +- .../use-cases/AwardPrizeUseCase.ts | 4 +- .../use-cases/CreatePaymentUseCase.test.ts | 6 +- .../use-cases/CreatePaymentUseCase.ts | 6 +- .../use-cases/CreatePrizeUseCase.test.ts | 6 +- .../use-cases/CreatePrizeUseCase.ts | 4 +- .../use-cases/DeletePrizeUseCase.test.ts | 6 +- .../use-cases/DeletePrizeUseCase.ts | 2 +- .../GetMembershipFeesUseCase.test.ts | 4 +- .../use-cases/GetMembershipFeesUseCase.ts | 6 +- .../use-cases/GetPaymentsUseCase.test.ts | 6 +- .../use-cases/GetPaymentsUseCase.ts | 4 +- .../use-cases/GetPrizesUseCase.test.ts | 6 +- .../application/use-cases/GetPrizesUseCase.ts | 4 +- .../GetSponsorBillingUseCase.test.ts | 12 +- .../use-cases/GetSponsorBillingUseCase.ts | 4 +- .../use-cases/GetWalletUseCase.test.ts | 4 +- .../application/use-cases/GetWalletUseCase.ts | 4 +- .../ProcessWalletTransactionUseCase.test.ts | 6 +- .../ProcessWalletTransactionUseCase.ts | 6 +- .../UpdateMemberPaymentUseCase.test.ts | 4 +- .../use-cases/UpdateMemberPaymentUseCase.ts | 6 +- .../UpdatePaymentStatusUseCase.test.ts | 6 +- .../use-cases/UpdatePaymentStatusUseCase.ts | 6 +- .../UpsertMembershipFeeUseCase.test.ts | 6 +- .../use-cases/UpsertMembershipFeeUseCase.ts | 4 +- .../domain/entities/MemberPayment.test.ts | 1 + .../domain/entities/MembershipFee.test.ts | 1 + core/payments/domain/entities/Payment.test.ts | 1 + core/payments/domain/entities/Prize.test.ts | 1 + core/payments/domain/entities/Wallet.test.ts | 1 + .../repositories/MembershipFeeRepository.ts | 2 +- .../domain/repositories/WalletRepository.ts | 2 +- core/ports/media/MediaResolverPort.test.ts | 2 +- .../queries/GetTeamRatingLedgerQuery.test.ts | 10 +- .../queries/GetTeamRatingLedgerQuery.ts | 4 +- .../GetTeamRatingsSummaryQuery.test.ts | 16 +- .../queries/GetTeamRatingsSummaryQuery.ts | 4 +- .../AcceptSponsorshipRequestUseCase.test.ts | 5 + .../AcceptSponsorshipRequestUseCase.ts | 8 +- .../AppendTeamRatingEventsUseCase.test.ts | 13 +- .../AppendTeamRatingEventsUseCase.ts | 2 +- .../ApplyForSponsorshipUseCase.test.ts | 3 + .../use-cases/ApplyForSponsorshipUseCase.ts | 8 +- .../use-cases/ApplyPenaltyUseCase.test.ts | 7 +- .../use-cases/ApplyPenaltyUseCase.ts | 4 +- .../ApproveLeagueJoinRequestUseCase.test.ts | 8 +- .../ApproveLeagueJoinRequestUseCase.ts | 4 +- .../ApproveTeamJoinRequestUseCase.test.ts | 4 +- .../ApproveTeamJoinRequestUseCase.ts | 4 +- .../use-cases/CancelRaceUseCase.test.ts | 4 +- .../use-cases/CancelRaceUseCase.ts | 2 +- .../CloseRaceEventStewardingUseCase.test.ts | 10 +- .../CloseRaceEventStewardingUseCase.ts | 2 +- .../CompleteDriverOnboardingUseCase.test.ts | 14 +- .../CompleteDriverOnboardingUseCase.ts | 6 +- .../use-cases/CompleteRaceUseCase.test.ts | 6 +- .../use-cases/CompleteRaceUseCase.ts | 12 +- .../CompleteRaceUseCaseWithRatings.test.ts | 16 +- .../CompleteRaceUseCaseWithRatings.ts | 16 +- ...ateLeagueSeasonScheduleRaceUseCase.test.ts | 7 +- .../CreateLeagueSeasonScheduleRaceUseCase.ts | 2 +- ...eLeagueWithSeasonAndScoringUseCase.test.ts | 8 +- ...CreateLeagueWithSeasonAndScoringUseCase.ts | 8 +- .../CreateSeasonForLeagueUseCase.test.ts | 14 +- .../use-cases/CreateSeasonForLeagueUseCase.ts | 32 +- .../use-cases/CreateSponsorUseCase.test.ts | 1 + .../use-cases/CreateSponsorUseCase.ts | 2 +- .../use-cases/CreateTeamUseCase.test.ts | 6 +- .../use-cases/CreateTeamUseCase.ts | 6 +- .../DashboardOverviewUseCase.test.ts | 18 +- .../use-cases/DashboardOverviewUseCase.ts | 2 +- ...eteLeagueSeasonScheduleRaceUseCase.test.ts | 7 +- .../DeleteLeagueSeasonScheduleRaceUseCase.ts | 2 +- .../use-cases/FileProtestUseCase.test.ts | 2 +- .../use-cases/FileProtestUseCase.ts | 8 +- ...aguesWithCapacityAndScoringUseCase.test.ts | 4 +- ...AllLeaguesWithCapacityAndScoringUseCase.ts | 20 +- .../GetAllLeaguesWithCapacityUseCase.test.ts | 4 +- .../GetAllLeaguesWithCapacityUseCase.ts | 6 +- .../GetAllRacesPageDataUseCase.test.ts | 2 +- .../use-cases/GetAllRacesPageDataUseCase.ts | 8 +- .../use-cases/GetAllRacesUseCase.ts | 4 +- .../use-cases/GetAllTeamsUseCase.ts | 4 +- .../GetDriverLiveriesUseCase.test.ts | 1 + .../use-cases/GetDriverLiveriesUseCase.ts | 2 +- .../use-cases/GetDriverTeamUseCase.test.ts | 4 +- .../use-cases/GetDriverTeamUseCase.ts | 4 +- .../GetDriversLeaderboardUseCase.test.ts | 3 + .../use-cases/GetDriversLeaderboardUseCase.ts | 6 +- ...GetEntitySponsorshipPricingUseCase.test.ts | 2 +- .../GetEntitySponsorshipPricingUseCase.ts | 2 +- .../GetLeagueAdminPermissionsUseCase.test.ts | 5 +- .../GetLeagueAdminPermissionsUseCase.ts | 2 +- .../use-cases/GetLeagueAdminUseCase.test.ts | 14 +- .../use-cases/GetLeagueAdminUseCase.ts | 2 +- .../GetLeagueDriverSeasonStatsUseCase.test.ts | 20 +- .../GetLeagueFullConfigUseCase.test.ts | 20 +- .../use-cases/GetLeagueFullConfigUseCase.ts | 8 +- .../GetLeagueJoinRequestsUseCase.test.ts | 20 +- .../GetLeagueMembershipsUseCase.test.ts | 18 +- .../use-cases/GetLeagueMembershipsUseCase.ts | 8 +- .../GetLeagueOwnerSummaryUseCase.test.ts | 16 +- .../use-cases/GetLeagueOwnerSummaryUseCase.ts | 6 +- .../GetLeagueProtestsUseCase.test.ts | 26 +- .../use-cases/GetLeagueProtestsUseCase.ts | 14 +- ...GetLeagueRosterJoinRequestsUseCase.test.ts | 14 +- .../GetLeagueRosterMembersUseCase.test.ts | 16 +- .../GetLeagueScheduleUseCase.test.ts | 14 +- .../use-cases/GetLeagueScheduleUseCase.ts | 4 +- .../GetLeagueScoringConfigUseCase.test.ts | 18 +- .../GetLeagueScoringConfigUseCase.ts | 14 +- .../use-cases/GetLeagueSeasonsUseCase.test.ts | 16 +- .../use-cases/GetLeagueSeasonsUseCase.ts | 2 +- .../GetLeagueStandingsUseCase.test.ts | 16 +- .../use-cases/GetLeagueStandingsUseCase.ts | 2 +- .../use-cases/GetLeagueStatsUseCase.test.ts | 14 +- .../use-cases/GetLeagueStatsUseCase.ts | 4 +- .../use-cases/GetLeagueWalletUseCase.test.ts | 22 +- .../use-cases/GetLeagueWalletUseCase.ts | 8 +- ...tPendingSponsorshipRequestsUseCase.test.ts | 18 +- .../GetPendingSponsorshipRequestsUseCase.ts | 8 +- .../GetProfileOverviewUseCase.test.ts | 18 +- .../use-cases/GetProfileOverviewUseCase.ts | 20 +- .../use-cases/GetRaceDetailUseCase.test.ts | 24 +- .../use-cases/GetRacePenaltiesUseCase.test.ts | 16 +- .../use-cases/GetRacePenaltiesUseCase.ts | 4 +- .../use-cases/GetRaceProtestsUseCase.test.ts | 18 +- .../use-cases/GetRaceProtestsUseCase.ts | 8 +- .../GetRaceRegistrationsUseCase.test.ts | 16 +- .../use-cases/GetRaceRegistrationsUseCase.ts | 4 +- .../GetRaceResultsDetailUseCase.test.ts | 22 +- .../use-cases/GetRaceResultsDetailUseCase.ts | 10 +- .../use-cases/GetRaceWithSOFUseCase.test.ts | 18 +- .../use-cases/GetRaceWithSOFUseCase.ts | 8 +- .../use-cases/GetRacesPageDataUseCase.test.ts | 4 +- .../use-cases/GetRacesPageDataUseCase.ts | 6 +- .../use-cases/GetSeasonDetailsUseCase.test.ts | 14 +- .../use-cases/GetSeasonDetailsUseCase.ts | 2 +- .../GetSeasonSponsorshipsUseCase.test.ts | 30 +- .../use-cases/GetSeasonSponsorshipsUseCase.ts | 10 +- .../GetSponsorDashboardUseCase.test.ts | 34 +- .../use-cases/GetSponsorDashboardUseCase.ts | 12 +- .../GetSponsorSponsorshipsUseCase.test.ts | 34 +- .../GetSponsorSponsorshipsUseCase.ts | 8 +- .../use-cases/GetSponsorUseCase.test.ts | 16 +- .../use-cases/GetSponsorUseCase.ts | 2 +- .../use-cases/GetSponsorsUseCase.test.ts | 4 +- .../use-cases/GetSponsorsUseCase.ts | 4 +- .../use-cases/GetTeamDetailsUseCase.test.ts | 18 +- .../use-cases/GetTeamDetailsUseCase.ts | 4 +- .../GetTeamJoinRequestsUseCase.test.ts | 22 +- .../use-cases/GetTeamJoinRequestsUseCase.ts | 12 +- .../use-cases/GetTeamMembersUseCase.test.ts | 8 +- .../use-cases/GetTeamMembersUseCase.ts | 6 +- .../GetTeamMembershipUseCase.test.ts | 2 +- .../use-cases/GetTeamMembershipUseCase.ts | 2 +- .../GetTeamsLeaderboardUseCase.test.ts | 3 +- .../use-cases/GetTeamsLeaderboardUseCase.ts | 4 +- .../use-cases/GetTotalDriversUseCase.test.ts | 14 +- .../use-cases/GetTotalLeaguesUseCase.test.ts | 14 +- .../use-cases/GetTotalLeaguesUseCase.ts | 2 +- .../use-cases/GetTotalRacesUseCase.test.ts | 15 +- .../ImportRaceResultsApiUseCase.test.ts | 5 + .../use-cases/ImportRaceResultsApiUseCase.ts | 8 +- .../ImportRaceResultsUseCase.test.ts | 5 + .../use-cases/ImportRaceResultsUseCase.ts | 8 +- .../IsDriverRegisteredForRaceUseCase.test.ts | 6 +- .../IsDriverRegisteredForRaceUseCase.ts | 4 +- .../use-cases/JoinLeagueUseCase.test.ts | 9 +- .../use-cases/JoinLeagueUseCase.ts | 2 +- .../use-cases/JoinTeamUseCase.test.ts | 2 + .../application/use-cases/JoinTeamUseCase.ts | 4 +- ...gueSeasonScheduleMutationsUseCases.test.ts | 2 +- .../use-cases/LeaveTeamUseCase.test.ts | 15 +- .../application/use-cases/LeaveTeamUseCase.ts | 4 +- .../ListLeagueScoringPresetsUseCase.test.ts | 12 +- .../ListLeagueScoringPresetsUseCase.ts | 2 +- .../ListSeasonsForLeagueUseCase.test.ts | 18 +- .../use-cases/ListSeasonsForLeagueUseCase.ts | 4 +- .../ManageSeasonLifecycleUseCase.test.ts | 18 +- .../use-cases/ManageSeasonLifecycleUseCase.ts | 6 +- ...PublishLeagueSeasonScheduleUseCase.test.ts | 7 +- .../use-cases/QuickPenaltyUseCase.test.ts | 3 + .../use-cases/QuickPenaltyUseCase.ts | 4 +- ...culateChampionshipStandingsUseCase.test.ts | 18 +- ...RecalculateChampionshipStandingsUseCase.ts | 8 +- ...RecomputeTeamRatingSnapshotUseCase.test.ts | 10 +- .../RecordTeamRaceRatingEventsUseCase.test.ts | 11 +- .../RecordTeamRaceRatingEventsUseCase.ts | 8 +- .../use-cases/RegisterForRaceUseCase.test.ts | 21 +- .../use-cases/RegisterForRaceUseCase.ts | 4 +- .../RejectLeagueJoinRequestUseCase.test.ts | 10 +- .../RejectSponsorshipRequestUseCase.test.ts | 1 + .../RejectTeamJoinRequestUseCase.test.ts | 16 +- .../use-cases/RejectTeamJoinRequestUseCase.ts | 2 +- .../RemoveLeagueMemberUseCase.test.ts | 14 +- .../use-cases/RemoveLeagueMemberUseCase.ts | 2 +- .../use-cases/ReopenRaceUseCase.test.ts | 4 +- .../use-cases/ReopenRaceUseCase.ts | 2 +- .../RequestProtestDefenseUseCase.test.ts | 20 +- .../use-cases/RequestProtestDefenseUseCase.ts | 8 +- .../use-cases/ReviewProtestUseCase.test.ts | 9 +- .../use-cases/ReviewProtestUseCase.ts | 4 +- .../use-cases/SeasonUseCases.test.ts | 32 +- .../application/use-cases/SeasonUseCases.ts | 28 +- .../use-cases/SendFinalResultsUseCase.test.ts | 20 +- .../use-cases/SendFinalResultsUseCase.ts | 8 +- .../SendPerformanceSummaryUseCase.test.ts | 22 +- .../SendPerformanceSummaryUseCase.ts | 8 +- .../SubmitProtestDefenseUseCase.test.ts | 4 +- .../use-cases/SubmitProtestDefenseUseCase.ts | 2 +- .../use-cases/TeamRankingUseCase.test.ts | 1 + .../TeamRatingFactoryUseCase.test.ts | 1 + .../use-cases/TeamRatingFactoryUseCase.ts | 2 +- .../TeamRatingIntegrationAdapter.test.ts | 9 +- .../use-cases/TeamRatingIntegrationAdapter.ts | 2 +- .../TransferLeagueOwnershipUseCase.test.ts | 8 +- ...publishLeagueSeasonScheduleUseCase.test.ts | 7 +- .../UpdateDriverProfileUseCase.test.ts | 20 +- .../use-cases/UpdateDriverProfileUseCase.ts | 6 +- .../UpdateLeagueMemberRoleUseCase.test.ts | 14 +- .../UpdateLeagueMemberRoleUseCase.ts | 2 +- ...ateLeagueSeasonScheduleRaceUseCase.test.ts | 7 +- .../UpdateLeagueSeasonScheduleRaceUseCase.ts | 4 +- .../use-cases/UpdateTeamUseCase.test.ts | 6 +- .../WithdrawFromLeagueWalletUseCase.test.ts | 1 + .../WithdrawFromLeagueWalletUseCase.ts | 4 +- .../use-cases/WithdrawFromRaceUseCase.test.ts | 16 +- .../use-cases/WithdrawFromRaceUseCase.ts | 4 +- core/racing/domain/entities/AppliedAt.test.ts | 3 +- core/racing/domain/entities/Car.test.ts | 3 +- core/racing/domain/entities/CarClass.test.ts | 1 + core/racing/domain/entities/CarId.test.ts | 1 + .../racing/domain/entities/CarLicense.test.ts | 1 + core/racing/domain/entities/CarName.test.ts | 1 + .../domain/entities/DecisionNotes.test.ts | 1 + .../domain/entities/DefenseStatement.test.ts | 1 + core/racing/domain/entities/Driver.test.ts | 2 +- core/racing/domain/entities/DriverId.test.ts | 3 +- .../domain/entities/DriverLivery.test.ts | 8 +- core/racing/domain/entities/FiledAt.test.ts | 1 + core/racing/domain/entities/Game.test.ts | 2 +- core/racing/domain/entities/GameId.test.ts | 1 + .../racing/domain/entities/Horsepower.test.ts | 1 + core/racing/domain/entities/ImageUrl.test.ts | 1 + .../entities/IncidentDescription.test.ts | 1 + core/racing/domain/entities/IssuedAt.test.ts | 3 +- .../domain/entities/JoinRequest.test.ts | 1 + core/racing/domain/entities/LapNumber.test.ts | 1 + core/racing/domain/entities/League.test.ts | 2 +- .../domain/entities/LeagueCreatedAt.test.ts | 1 + .../domain/entities/LeagueDescription.test.ts | 1 + core/racing/domain/entities/LeagueId.test.ts | 1 + .../domain/entities/LeagueMembership.test.ts | 2 +- .../racing/domain/entities/LeagueName.test.ts | 1 + .../domain/entities/LeagueOwnerId.test.ts | 1 + .../entities/LeagueScoringConfig.test.ts | 4 +- .../entities/LeagueScoringConfigId.test.ts | 3 +- .../domain/entities/LeagueSocialLinks.test.ts | 1 + .../domain/entities/LiveryTemplate.test.ts | 4 +- .../entities/LiveryTemplateCreatedAt.test.ts | 1 + .../entities/LiveryTemplateUpdatedAt.test.ts | 1 + .../domain/entities/Manufacturer.test.ts | 1 + .../domain/entities/MembershipRole.test.ts | 1 + .../domain/entities/MembershipStatus.test.ts | 1 + core/racing/domain/entities/Penalty.test.ts | 2 +- core/racing/domain/entities/Protest.test.ts | 3 +- .../domain/entities/ProtestDefense.test.ts | 1 + core/racing/domain/entities/ProtestDefense.ts | 2 +- core/racing/domain/entities/ProtestId.test.ts | 2 +- .../racing/domain/entities/ProtestIncident.ts | 2 +- .../domain/entities/ProtestStatus.test.ts | 1 + core/racing/domain/entities/Race.test.ts | 5 +- core/racing/domain/entities/RaceEvent.test.ts | 5 +- core/racing/domain/entities/RaceId.test.ts | 3 +- .../domain/entities/RaceRegistration.test.ts | 4 +- .../domain/entities/RegisteredAt.test.ts | 3 +- .../entities/ResultWithIncidents.test.ts | 1 + .../racing/domain/entities/ReviewedAt.test.ts | 1 + .../domain/entities/ScoringPresetId.test.ts | 1 + core/racing/domain/entities/Session.test.ts | 4 +- .../entities/SponsorshipRequest.test.ts | 6 +- core/racing/domain/entities/Standing.test.ts | 3 +- core/racing/domain/entities/StewardId.test.ts | 3 +- .../domain/entities/SubmittedAt.test.ts | 1 + core/racing/domain/entities/Team.test.ts | 2 +- .../domain/entities/TeamRatingEvent.test.ts | 10 +- .../racing/domain/entities/TimeInRace.test.ts | 1 + core/racing/domain/entities/Track.test.ts | 2 +- core/racing/domain/entities/VideoUrl.test.ts | 1 + core/racing/domain/entities/Weight.test.ts | 1 + core/racing/domain/entities/Year.test.ts | 1 + .../championship/ChampionshipStanding.test.ts | 4 +- .../entities/championship/Position.test.ts | 2 +- .../championship/ResultsCount.test.ts | 2 +- .../league-wallet/LeagueWallet.test.ts | 4 +- .../league-wallet/LeagueWalletId.test.ts | 2 +- .../league-wallet/Transaction.test.ts | 6 +- .../league-wallet/TransactionId.test.ts | 2 +- .../domain/entities/penalty/Penalty.test.ts | 3 +- .../domain/entities/penalty/PenaltyId.test.ts | 3 +- .../entities/penalty/PenaltyNotes.test.ts | 3 +- .../entities/penalty/PenaltyReason.test.ts | 3 +- .../entities/penalty/PenaltyStatus.test.ts | 3 +- .../entities/penalty/PenaltyType.test.ts | 3 +- .../entities/penalty/PenaltyValue.test.ts | 3 +- .../domain/entities/prize/Prize.test.ts | 5 +- .../domain/entities/prize/PrizeId.test.ts | 3 +- .../domain/entities/prize/PrizeStatus.test.ts | 3 +- .../entities/result/IncidentCount.test.ts | 3 +- .../domain/entities/result/LapTime.test.ts | 3 +- .../domain/entities/result/Position.test.ts | 3 +- .../domain/entities/result/Result.test.ts | 9 +- .../domain/entities/season/Season.test.ts | 12 +- .../domain/entities/season/SeasonId.test.ts | 1 + .../entities/season/SeasonSponsorship.test.ts | 8 +- .../domain/entities/sponsor/Sponsor.test.ts | 1 + .../entities/sponsor/SponsorCreatedAt.test.ts | 1 + .../entities/sponsor/SponsorEmail.test.ts | 1 + .../domain/entities/sponsor/SponsorId.test.ts | 1 + .../entities/sponsor/SponsorName.test.ts | 1 + .../domain/entities/sponsor/Url.test.ts | 1 + .../racing/domain/errors/RacingDomainError.ts | 2 +- .../LeagueMembershipRepository.ts | 4 +- .../SponsorshipPricingRepository.ts | 2 +- .../SponsorshipRequestRepository.ts | 2 +- .../repositories/TeamMembershipRepository.ts | 4 +- .../domain/services/ChampionshipAggregator.ts | 4 +- .../domain/services/DropScoreApplier.test.ts | 4 +- .../domain/services/DropScoreApplier.ts | 2 +- .../services/EventScoringService.test.ts | 6 +- .../domain/services/EventScoringService.ts | 10 +- .../services/ScheduleCalculator.test.ts | 2 +- .../ScoringPresetTimingService.test.ts | 6 +- .../services/SeasonScheduleGenerator.ts | 10 +- .../TeamDrivingRatingCalculator.test.ts | 2 +- .../services/TeamDrivingRatingCalculator.ts | 6 +- .../TeamDrivingRatingEventFactory.test.ts | 2 +- .../services/TeamDrivingRatingEventFactory.ts | 8 +- .../services/TeamRatingEventFactory.test.ts | 2 +- .../domain/services/TeamRatingEventFactory.ts | 4 +- .../TeamRatingSnapshotCalculator.test.ts | 6 +- .../services/TeamRatingSnapshotCalculator.ts | 2 +- .../racing/domain/types/ChampionshipConfig.ts | 4 +- .../racing/domain/value-objects/CarId.test.ts | 2 +- core/racing/domain/value-objects/CarId.ts | 2 +- .../domain/value-objects/CountryCode.test.ts | 2 +- .../domain/value-objects/CountryCode.ts | 2 +- .../value-objects/DecalOverride.test.ts | 2 +- .../domain/value-objects/DecalOverride.ts | 2 +- .../value-objects/GameConstraints.test.ts | 2 +- .../domain/value-objects/ImageUrl.test.ts | 2 +- core/racing/domain/value-objects/ImageUrl.ts | 2 +- .../domain/value-objects/JoinedAt.test.ts | 2 +- core/racing/domain/value-objects/JoinedAt.ts | 2 +- .../value-objects/LeagueDescription.test.ts | 2 +- .../domain/value-objects/LeagueDescription.ts | 2 +- .../domain/value-objects/LeagueName.test.ts | 2 +- .../racing/domain/value-objects/LeagueName.ts | 2 +- .../value-objects/LeagueTimezone.test.ts | 2 +- .../domain/value-objects/LeagueTimezone.ts | 2 +- .../value-objects/LeagueVisibility.test.ts | 2 +- .../domain/value-objects/LiveryDecal.test.ts | 2 +- .../domain/value-objects/LiveryDecal.ts | 2 +- .../value-objects/MembershipFee.test.ts | 2 +- .../domain/value-objects/MembershipFee.ts | 2 +- .../racing/domain/value-objects/Money.test.ts | 2 +- .../MonthlyRecurrencePattern.test.ts | 2 +- .../value-objects/MonthlyRecurrencePattern.ts | 6 +- .../domain/value-objects/Points.test.ts | 2 +- .../domain/value-objects/PointsTable.test.ts | 2 +- .../value-objects/RaceIncidents.test.ts | 2 +- .../domain/value-objects/RaceName.test.ts | 2 +- .../domain/value-objects/RaceStatus.test.ts | 4 +- .../value-objects/RaceTimeOfDay.test.ts | 4 +- .../domain/value-objects/RaceTimeOfDay.ts | 2 +- .../domain/value-objects/RacingId.test.ts | 2 +- core/racing/domain/value-objects/RacingId.ts | 2 +- .../value-objects/RecurrenceStrategy.test.ts | 4 +- .../value-objects/RecurrenceStrategy.ts | 6 +- .../RecurrenceStrategyFactory.test.ts | 1 + .../RecurrenceStrategyFactory.ts | 2 +- .../value-objects/ScheduledRaceSlot.test.ts | 4 +- .../domain/value-objects/ScheduledRaceSlot.ts | 2 +- .../value-objects/SeasonDropPolicy.test.ts | 8 +- .../domain/value-objects/SeasonDropPolicy.ts | 2 +- .../value-objects/SeasonSchedule.test.ts | 12 +- .../domain/value-objects/SeasonSchedule.ts | 8 +- .../value-objects/SeasonScoringConfig.test.ts | 4 +- .../value-objects/SeasonScoringConfig.ts | 2 +- .../SeasonStewardingConfig.test.ts | 4 +- .../value-objects/SeasonStewardingConfig.ts | 2 +- .../domain/value-objects/SessionType.test.ts | 2 +- .../domain/value-objects/SessionType.ts | 2 +- .../value-objects/SponsorshipPricing.test.ts | 4 +- .../value-objects/SponsorshipPricing.ts | 2 +- .../value-objects/TeamCreatedAt.test.ts | 2 +- .../domain/value-objects/TeamCreatedAt.ts | 2 +- .../value-objects/TeamDescription.test.ts | 2 +- .../domain/value-objects/TeamDescription.ts | 2 +- .../TeamDrivingReasonCode.test.ts | 2 +- .../domain/value-objects/TeamName.test.ts | 2 +- core/racing/domain/value-objects/TeamName.ts | 2 +- .../value-objects/TeamRatingDelta.test.ts | 3 +- .../TeamRatingDimensionKey.test.ts | 3 +- .../value-objects/TeamRatingEventId.test.ts | 3 +- .../value-objects/TeamRatingValue.test.ts | 3 +- .../domain/value-objects/TeamTag.test.ts | 2 +- core/racing/domain/value-objects/TeamTag.ts | 2 +- .../domain/value-objects/TrackCountry.test.ts | 2 +- .../domain/value-objects/TrackCountry.ts | 2 +- .../domain/value-objects/TrackGameId.test.ts | 2 +- .../domain/value-objects/TrackGameId.ts | 2 +- .../domain/value-objects/TrackId.test.ts | 2 +- .../value-objects/TrackImageUrl.test.ts | 2 +- .../domain/value-objects/TrackImageUrl.ts | 2 +- .../domain/value-objects/TrackLength.test.ts | 2 +- .../domain/value-objects/TrackLength.ts | 2 +- .../domain/value-objects/TrackName.test.ts | 2 +- .../value-objects/TrackShortName.test.ts | 2 +- .../domain/value-objects/TrackShortName.ts | 2 +- .../domain/value-objects/TrackTurns.test.ts | 2 +- .../racing/domain/value-objects/TrackTurns.ts | 2 +- .../domain/value-objects/WeekdaySet.test.ts | 1 + .../racing/domain/value-objects/WeekdaySet.ts | 4 +- .../value-objects/driver/DriverBio.test.ts | 2 +- .../domain/value-objects/driver/DriverBio.ts | 2 +- .../value-objects/driver/DriverId.test.ts | 2 +- .../domain/value-objects/driver/DriverId.ts | 2 +- .../value-objects/driver/DriverName.test.ts | 2 +- .../domain/value-objects/driver/DriverName.ts | 2 +- core/shared/domain/Service.ts | 2 +- .../GetCurrentUserSocialUseCase.test.ts | 2 +- .../use-cases/GetCurrentUserSocialUseCase.ts | 2 +- .../use-cases/GetUserFeedUseCase.test.ts | 2 +- .../use-cases/GetUserFeedUseCase.ts | 2 +- .../social/domain/errors/SocialDomainError.ts | 2 +- 563 files changed, 1643 insertions(+), 2259 deletions(-) diff --git a/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightAutomationAdapter.ts b/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightAutomationAdapter.ts index b17d6aa6b..fbf974a58 100644 --- a/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightAutomationAdapter.ts +++ b/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightAutomationAdapter.ts @@ -1,32 +1,32 @@ -import type { Browser, Page, BrowserContext } from 'playwright'; +import { Result } from '@core/shared/domain/Result'; import * as fs from 'fs'; import * as path from 'path'; -import { StepId } from '../../../../domain/value-objects/StepId'; -import { AuthenticationState } from '../../../../domain/value-objects/AuthenticationState'; -import { BrowserAuthenticationState } from '../../../../domain/value-objects/BrowserAuthenticationState'; -import { CheckoutPrice } from '../../../../domain/value-objects/CheckoutPrice'; -import { CheckoutState } from '../../../../domain/value-objects/CheckoutState'; -import { CheckoutConfirmation } from '../../../../domain/value-objects/CheckoutConfirmation'; -import type { IBrowserAutomation } from '../../../../application/ports/ScreenAutomationPort'; -import type { NavigationResultDTO } from '../../../../application/dto/NavigationResultDTO'; -import type { FormFillResultDTO } from '../../../../application/dto/FormFillResultDTO'; -import type { ClickResultDTO } from '../../../../application/dto/ClickResultDTO'; -import type { WaitResultDTO } from '../../../../application/dto/WaitResultDTO'; -import type { ModalResultDTO } from '../../../../application/dto/ModalResultDTO'; +import type { Browser, BrowserContext, Page } from 'playwright'; import type { AutomationResultDTO } from '../../../../application/dto/AutomationResultDTO'; +import type { ClickResultDTO } from '../../../../application/dto/ClickResultDTO'; +import type { FormFillResultDTO } from '../../../../application/dto/FormFillResultDTO'; +import type { ModalResultDTO } from '../../../../application/dto/ModalResultDTO'; +import type { NavigationResultDTO } from '../../../../application/dto/NavigationResultDTO'; +import type { WaitResultDTO } from '../../../../application/dto/WaitResultDTO'; import type { AuthenticationServicePort } from '../../../../application/ports/AuthenticationServicePort'; import type { LoggerPort } from '../../../../application/ports/LoggerPort'; -import { Result } from '@core/shared/domain/Result'; -import { IRACING_SELECTORS, IRACING_URLS, IRACING_TIMEOUTS, BLOCKED_KEYWORDS } from '../dom/RacingSelectors'; +import type { IBrowserAutomation } from '../../../../application/ports/ScreenAutomationPort'; +import { AuthenticationState } from '../../../../domain/value-objects/AuthenticationState'; +import { BrowserAuthenticationState } from '../../../../domain/value-objects/BrowserAuthenticationState'; +import { CheckoutConfirmation } from '../../../../domain/value-objects/CheckoutConfirmation'; +import { CheckoutPrice } from '../../../../domain/value-objects/CheckoutPrice'; +import { CheckoutState } from '../../../../domain/value-objects/CheckoutState'; +import { StepId } from '../../../../domain/value-objects/StepId'; import { SessionCookieStore } from '../auth/SessionCookieStore'; +import { BLOCKED_KEYWORDS, IRACING_SELECTORS, IRACING_TIMEOUTS, IRACING_URLS } from '../dom/RacingSelectors'; import { PlaywrightBrowserSession } from './PlaywrightBrowserSession'; -import { PageStateValidator, PageStateValidation, PageStateValidationResult } from 'apps/companion/main/automation/domain/services/PageStateValidator'; -import { IRacingDomNavigator } from '../dom/RacingDomNavigator'; -import { SafeClickService } from '../dom/SafeClickService'; -import { IRacingDomInteractor } from '../dom/RacingDomInteractor'; +import { PageStateValidation, PageStateValidationResult, PageStateValidator } from 'apps/companion/main/automation/domain/services/PageStateValidator'; import { PlaywrightAuthSessionService } from '../auth/PlaywrightAuthSessionService'; import { IRacingPlaywrightAuthFlow } from '../auth/RacingPlaywrightAuthFlow'; +import { IRacingDomInteractor } from '../dom/RacingDomInteractor'; +import { IRacingDomNavigator } from '../dom/RacingDomNavigator'; +import { SafeClickService } from '../dom/SafeClickService'; import { WizardStepOrchestrator } from './WizardStepOrchestrator'; @@ -425,7 +425,6 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti private config: Required; private browserSession: PlaywrightBrowserSession; private connected = false; - private isConnecting = false; private logger: LoggerPort | undefined; private cookieStore: SessionCookieStore; private authService: PlaywrightAuthSessionService; @@ -539,8 +538,7 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti * Minimal attachPanel helper for tests that simulates deterministic lifecycle events. * Emits 'panel-attached' and then 'action-started' immediately for deterministic tests. */ - async attachPanel(page?: Page, actionId?: string): Promise { - const selector = '#gridpilot-overlay' + async attachPanel(actionId?: string): Promise { await this.emitLifecycle({ type: 'panel-attached', actionId, timestamp: Date.now(), payload: { _selector } }) await this.emitLifecycle({ type: 'action-started', actionId, timestamp: Date.now() }) } @@ -659,32 +657,6 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti this.syncSessionStateFromBrowser(); } - /** - * Clean up stale SingletonLock file if it exists and the owning process is not running. - * On Unix systems, SingletonLock is a symbolic link pointing to a socket file. - * If the browser crashed or was force quit, this file remains and blocks new launches. - */ - private async cleanupStaleLockFile(userDataDir: string): Promise { - const singletonLockPath = path.join(userDataDir, 'SingletonLock'); - - try { - // Check if lock file exists - if (!fs.existsSync(singletonLockPath)) { - return; // No lock file, we're good - } - - this.log('info', 'Found existing SingletonLock, attempting cleanup', { path: singletonLockPath }); - - // Try to remove the lock file - // On Unix, SingletonLock is typically a symlink, so unlink works for both files and symlinks - fs.unlinkSync(singletonLockPath); - this.log('info', 'Cleaned up stale SingletonLock file'); - } catch (error) { - // If we can't remove it, the browser might actually be running - // Log warning but continue - Playwright will give us a proper error if it's actually locked - this.log('warn', 'Could not clean up SingletonLock', { error: String(error) }); - } - } async disconnect(): Promise { await this.browserSession.disconnect(); @@ -827,90 +799,7 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti 17: 'trackConditions', }; - /** - * Detect which wizard page is currently displayed by checking container existence. - * Returns the page name (e.g., 'cars', 'track') or null if no page is detected. - * - * This method checks each step container from IRACING_SELECTORS.wizard.stepContainers - * and returns the first one that exists in the DOM. - * - * @returns Page name or null if unknown - */ - private async detectCurrentWizardPage(): Promise { - if (!this.page) { - return null; - } - try { - // Check each container in stepContainers map - const containers = IRACING_SELECTORS.wizard.stepContainers; - - for (const [pageName, selector] of Object.entries(containers)) { - const count = await this.page.locator(selector).count(); - if (count > 0) { - this.log('debug', 'Detected wizard page', { pageName, selector }); - return pageName; - } - } - - // No container found - this.log('debug', 'No wizard page detected'); - return null; - } catch (error) { - this.log('debug', 'Error detecting wizard page', { error: String(error) }); - return null; - } - } - - /** - * Synchronize step counter with actual wizard state. - * Calculates the skip offset when wizard auto-skips steps (e.g., 8→11). - * - * @param expectedStep The step number we're trying to execute - * @param actualPage The actual wizard page detected (from detectCurrentWizardPage) - * @returns Skip offset (0 if no skip, >0 if steps were skipped) - */ - private synchronizeStepCounter(expectedStep: number, actualPage: string | null): number { - if (!actualPage) { - return 0; // Unknown state, no skip - } - - // Find which step number corresponds to the actual page - let actualStep: number | null = null; - for (const [step, pageName] of Object.entries(PlaywrightAutomationAdapter.STEP_TO_PAGE_MAP)) { - if (pageName === actualPage) { - actualStep = parseInt(step, 10); - break; // Use first match - } - } - - if (actualStep === null) { - return 0; // Unknown page, no skip - } - - // Calculate skip offset - const skipOffset = actualStep - expectedStep; - - if (skipOffset > 0) { - // Wizard skipped ahead - log warning with skipped step numbers - const skippedSteps: number[] = []; - for (let i = expectedStep; i < actualStep; i++) { - skippedSteps.push(i); - } - - this.log('warn', 'Wizard auto-skip detected', { - expectedStep, - actualStep, - skipOffset, - skippedSteps, - }); - - return skipOffset; - } - - // No skip or backward navigation - return 0; - } /** * Save debug information (screenshot and HTML) when a step fails. @@ -1509,427 +1398,16 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti } } - /** - * Select weather type via Chakra UI radio button. - * iRacing's modern UI uses a radio group with options: - * - "Static Weather" (value: 2, checked by default) - * - "Forecasted weather" (value: 1) - * - "Timeline editor" (value: 3) - * - * @param weatherType The weather type to select (e.g., "static", "forecasted", "timeline", or the value) - */ - private async selectWeatherType(weatherType: string): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - try { - this.log('info', 'Selecting weather type via radio button', { weatherType }); - // Map common weather type names to selectors - const weatherTypeLower = weatherType.toLowerCase(); - let labelSelector: string; - if (weatherTypeLower.includes('static') || weatherType === '2') { - labelSelector = 'label.chakra-radio:has-text("Static Weather")'; - } else if (weatherTypeLower.includes('forecast') || weatherType === '1') { - labelSelector = 'label.chakra-radio:has-text("Forecasted weather")'; - } else if (weatherTypeLower.includes('timeline') || weatherTypeLower.includes('custom') || weatherType === '3') { - labelSelector = 'label.chakra-radio:has-text("Timeline editor")'; - } else { - // Default to static weather - labelSelector = 'label.chakra-radio:has-text("Static Weather")'; - this.log('warn', `Unknown weather type "${weatherType}", defaulting to Static Weather`); - } - // Check if radio group exists (weather step might be optional) - const radioGroup = this.page.locator('[role="radiogroup"]').first(); - const exists = await radioGroup.count() > 0; - if (!exists) { - this.log('debug', 'Weather radio group not found, step may be optional'); - return; - } - // Click the radio button label - const radioLabel = this.page.locator(labelSelector).first(); - const isVisible = await radioLabel.isVisible().catch(() => false); - if (isVisible) { - await radioLabel.click({ timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Selected weather type', { weatherType, _selector: labelSelector }); - } else { - this.log('debug', 'Weather type radio not visible, may already be selected or step is different'); - } - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('warn', 'Could not select weather type (non-critical)', { error: message, weatherType }); - // Don't throw - weather type selection is optional - } - } - /** - * Check if the "Add Admin" modal is currently visible. - * This modal appears when the user clicks "Add Admin" on the Admins step. - * @returns true if the admin modal is visible, false otherwise - */ - private async isAdminModalVisible(): Promise { - if (!this.page) return false; - try { - // Look for a modal with admin-related content - // The admin modal should have a search input and be separate from the main wizard modal - const adminModalSelector = '#set-admins .modal, .modal:has(input[placeholder*="Search"]):has-text("Admin")'; - const isVisible = await this.page.locator(adminModalSelector).first().isVisible().catch(() => false); - return isVisible; - } catch { - return false; - } - } - /** - * Check if the "Add Car" modal is currently visible. - * This modal appears when the user clicks "Add Car" on the Cars step. - * @returns true if the car modal is visible, false otherwise - */ - private async isCarModalVisible(): Promise { - if (!this.page) return false; - - try { - // Look for a modal with car-related content - // The car modal should have a search input and be part of the set-cars step - const carModalSelector = '#set-cars .modal, .modal:has(input[placeholder*=\"Search\"]):has-text(\"Car\")'; - const isVisible = await this.page.locator(carModalSelector).first().isVisible().catch(() => false); - return isVisible; - } catch { - return false; - } - } - - /** - * Check if the "Add Track" modal is currently visible. - * This modal appears when the user clicks "Add Track" on the Track step. - * @returns true if the track modal is visible, false otherwise - */ - private async isTrackModalVisible(): Promise { - if (!this.page) return false; - - try { - // Look for a modal with track-related content - // The track modal should have a search input and be part of the set-track step - const trackModalSelector = '#set-track .modal, .modal:has(input[placeholder*=\"Search\"]):has-text(\"Track\")'; - const isVisible = await this.page.locator(trackModalSelector).first().isVisible().catch(() => false); - return isVisible; - } catch { - return false; - } - } - - /** - * Click the "Add Car" button to open the Add Car modal. - * This button is located on the Set Cars step (Step 8). - */ - private async clickAddCarButton(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - const addCarButtonSelector = this.isRealMode() - ? IRACING_SELECTORS.steps.addCarButton - : '[data-action="add-car"]'; - - try { - this.log('info', 'Clicking Add Car button to open modal'); - // Use 'attached' instead of 'visible' because iRacing wizard steps have class="hidden" - await this.page.waitForSelector(addCarButtonSelector, { - state: 'attached', - timeout: this.isRealMode() ? IRACING_TIMEOUTS.elementWait : this.config.timeout, - }); - await this.safeClick(addCarButtonSelector); - this.log('info', 'Clicked Add Car button'); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('error', 'Could not click Add Car button', { error: message }); - throw new Error(`Failed to click Add Car button: ${message}`); - } - } - - /** - * Wait for the Add Car modal to appear. - */ - private async waitForAddCarModal(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - try { - this.log('debug', 'Waiting for Add Car modal to appear (primary selector)'); - // Wait for modal container - expanded selector list to tolerate UI variants - const modalSelector = IRACING_SELECTORS.steps.addCarModal; - await this.page.waitForSelector(modalSelector, { - state: 'attached', - timeout: this.isRealMode() ? IRACING_TIMEOUTS.elementWait : this.config.timeout, - }); - // Brief pause for modal animation (reduced from 300ms) - await this.page.waitForTimeout(150); - this.log('info', 'Add Car modal is visible', { _selector: modalSelector }); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('warn', 'Add Car modal not found with primary _selector, dumping #create-race-wizard innerHTML and retrying', { error: message }); - const html = await this.page!.innerHTML('#create-race-wizard').catch(() => ''); - this.log('debug', 'create-race-wizard innerHTML (truncated)', { html: html ? html.slice(0, 2000) : '' }); - this.log('info', 'Retrying wait for Add Car modal with extended timeout'); - try { - const modalSelectorRetry = IRACING_SELECTORS.steps.addCarModal; - await this.page.waitForSelector(modalSelectorRetry, { - state: 'attached', - timeout: 10000, - }); - await this.page.waitForTimeout(150); - this.log('info', 'Add Car modal found after retry', { _selector: modalSelectorRetry }); - } catch { - this.log('warn', 'Add Car modal still not found after retry'); - } - // Don't throw - modal might appear differently in real iRacing - } - } - - /** - * Click the "Add Track" / "Select Track" button to open the Add Track modal. - * This button is located on the Set Track step (Step 11). - */ - private async clickAddTrackButton(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - const addTrackButtonSelector = IRACING_SELECTORS.steps.addTrackButton; - - try { - this.log('info', 'Clicking Add Track button to open modal'); - // Use 'attached' instead of 'visible' because iRacing wizard steps have class="hidden" - await this.page.waitForSelector(addTrackButtonSelector, { - state: 'attached', - timeout: this.isRealMode() ? IRACING_TIMEOUTS.elementWait : this.config.timeout, - }); - await this.safeClick(addTrackButtonSelector); - this.log('info', 'Clicked Add Track button'); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('error', 'Could not click Add Track button', { error: message }); - throw new Error(`Failed to click Add Track button: ${message}`); - } - } - - /** - * Wait for the Add Track modal to appear. - */ - private async waitForAddTrackModal(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - try { - this.log('debug', 'Waiting for Add Track modal to appear'); - // Wait for modal container - use 'attached' because iRacing wizard steps have class="hidden" - const modalSelector = IRACING_SELECTORS.steps.addTrackModal; - await this.page.waitForSelector(modalSelector, { - state: 'attached', - timeout: this.isRealMode() ? IRACING_TIMEOUTS.elementWait : this.config.timeout, - }); - // Brief pause for modal animation (reduced from 300ms) - await this.page.waitForTimeout(150); - this.log('info', 'Add Track modal is visible'); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('warn', 'Add Track modal did not appear', { error: message }); - // Don't throw - modal might appear differently in real iRacing - } - } - - /** - * Select the first search result in the current modal by clicking its "Select" button. - * In iRacing's Add Car/Track modals, search results are displayed in a table, - * and each row has a "Select" button (a.btn.btn-block.btn-primary.btn-xs). - * - * Two button patterns exist: - * 1. Direct select (single-config tracks): a.btn.btn-primary.btn-xs:not(.dropdown-toggle) - * 2. Dropdown (multi-config tracks): a.btn.btn-primary.btn-xs.dropdown-toggle → opens menu → click .dropdown-item - * - * Clicking "Select" immediately adds the item - there is no confirm step. - */ - private async selectFirstSearchResult(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - // First try direct select button (non-dropdown) - using verified selectors - // Try both track and car select buttons as this method is shared - const directSelectors = [ - IRACING_SELECTORS.steps.trackSelectButton, - IRACING_SELECTORS.steps.carSelectButton - ]; - - for (const selector of directSelectors) { - const button = this.page.locator(selector).first(); - if (await button.count() > 0 && await button.isVisible()) { - await this.safeClick(_selector, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Clicked direct Select button for first search result', { selector }); - return; - } - } - - // Fallback: dropdown toggle pattern (for multi-config tracks) - const dropdownSelector = IRACING_SELECTORS.steps.trackSelectDropdown; - const dropdownButton = this.page.locator(dropdownSelector).first(); - - if (await dropdownButton.count() > 0 && await dropdownButton.isVisible()) { - // Click dropdown to open menu - await this.safeClick(dropdownSelector, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('debug', 'Clicked dropdown toggle, waiting for menu', { _selector: dropdownSelector }); - - // Wait for dropdown menu to appear - await this.page.waitForSelector('.dropdown-menu.show', { timeout: 3000 }).catch(() => { }); - - // Click first item in dropdown (first track config) - const itemSelector = IRACING_SELECTORS.steps.trackSelectDropdownItem; - await this.page.waitForTimeout(200); - await this.safeClick(itemSelector, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Clicked first dropdown item to select track config', { _selector: itemSelector }); - return; - } - - // Final fallback: try tolerant car row selectors (various UI variants) - const carRowSelector = '.car-row, .car-item, [data-testid*="car"], [id*="favorite_cars"], [id*="select-car"]'; - const carRow = this.page.locator(carRowSelector).first(); - if (await carRow.count() > 0) { - this.log('info', 'Fallback: clicking car row/item to select', { _selector: carRowSelector }); - // Click the row itself (or its first clickable descendant) - try { - await this.safeClick(carRowSelector, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Clicked car row fallback selector'); - return; - } catch (e) { - this.log('debug', 'Car row fallback click failed, attempting to click first link inside row', { error: String(e) }); - const linkInside = this.page.locator(`${carRowSelector} a, ${carRowSelector} button`).first(); - if (await linkInside.count() > 0 && await linkInside.isVisible()) { - await this.safeClick(`${carRowSelector} a, ${carRowSelector} button`, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Clicked link/button inside car row fallback'); - return; - } - } - } - - // If none found, throw error - throw new Error('No Select button found in modal table and no fallback car row found'); - } - - // NOTE: clickCarModalConfirm() and clickTrackModalConfirm() have been removed. - // The Add Car/Track modals use a table with "Select" buttons that immediately add the item. - // There is no separate confirm step - clicking "Select" closes the modal and adds the car/track. - // The selectFirstSearchResult() method now handles clicking the "Select" button directly. - - /** - * Click the confirm/select button in the "Add Admin" modal. - * Uses a specific selector that avoids the checkout button. - */ - private async clickAdminModalConfirm(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - // Use a selector specific to the admin modal, NOT the main wizard modal footer - // The admin modal confirm button should be inside the admin modal content - const adminConfirmSelector = '#set-admins .modal .btn-primary, #set-admins .modal button:has-text("Add"), #set-admins .modal button:has-text("Select")'; - - try { - // Use 'attached' instead of 'visible' because iRacing wizard steps have class="hidden" - await this.page.waitForSelector(adminConfirmSelector, { - state: 'attached', - timeout: IRACING_TIMEOUTS.elementWait, - }); - await this.safeClick(adminConfirmSelector, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Clicked admin modal confirm button'); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('warn', 'Could not click admin modal confirm button', { error: message }); - throw new Error(`Failed to confirm admin selection: ${message}`); - } - } - - /** - * Click the "New Race" option in the modal that appears after clicking "Create a Race". - * Supports both: - * - Direct "New Race" button - * - Dropdown menu with "Last Settings" / "New Race" items (fixture HTML) - */ - private async clickNewRaceInModal(): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - try { - this.log('info', 'Waiting for Create Race modal to appear'); - - const modalSelector = IRACING_SELECTORS.hostedRacing.createRaceModal; - await this.page.waitForSelector(modalSelector, { - state: 'attached', - timeout: IRACING_TIMEOUTS.elementWait, - }); - - this.log('info', 'Create Race modal attached, resolving New Race control'); - - const directSelector = IRACING_SELECTORS.hostedRacing.newRaceButton; - const direct = this.page.locator(directSelector).first(); - const hasDirect = - (await direct.count().catch(() => 0)) > 0 && - (await direct.isVisible().catch(() => false)); - - if (hasDirect) { - this.log('info', 'Clicking direct New Race button', { _selector: directSelector }); - await this.safeClick(directSelector, { timeout: IRACING_TIMEOUTS.elementWait }); - } else { - const dropdownToggleSelector = - '.btn-toolbar .btn-group.dropup > a.dropdown-toggle, .btn-group.dropup > a.dropdown-toggle'; - const dropdownToggle = this.page.locator(dropdownToggleSelector).first(); - const hasDropdown = - (await dropdownToggle.count().catch(() => 0)) > 0 && - (await dropdownToggle.isVisible().catch(() => false)); - - if (!hasDropdown) { - throw new Error( - `Create Race modal present but no direct New Race button or dropdown toggle found (selectors: ${directSelector}, ${dropdownToggleSelector})`, - ); - } - - this.log('info', 'Clicking dropdown toggle to open New Race menu', { - selector: dropdownToggleSelector, - }); - await this.safeClick(dropdownToggleSelector, { - timeout: IRACING_TIMEOUTS.elementWait, - }); - - const menuSelector = - '.dropdown-menu a.dropdown-item.text-danger:has-text("New Race"), .dropdown-menu a.dropdown-item:has-text("New Race")'; - this.log('debug', 'Waiting for New Race entry in dropdown menu', { - selector: menuSelector, - }); - await this.page.waitForSelector(menuSelector, { - state: 'attached', - timeout: IRACING_TIMEOUTS.elementWait, - }); - await this.safeClick(menuSelector, { timeout: IRACING_TIMEOUTS.elementWait }); - this.log('info', 'Clicked New Race dropdown item'); - } - - this.log('info', 'Waiting for Race Information form to load after New Race selection'); - await this.page.waitForTimeout(500); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('error', 'Failed to click New Race in modal', { error: message }); - throw new Error(`Failed to click New Race button: ${message}`); - } - } /** * Handle login for real iRacing website. @@ -2084,143 +1562,8 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti await this.navigator.waitForStep(stepNumber); } - /** - * Wait for a specific wizard step to be visible in real mode. - * Uses the step container IDs from IRACING_SELECTORS.wizard.stepContainers - */ - private async waitForWizardStep(stepName: keyof typeof IRACING_SELECTORS.wizard.stepContainers): Promise { - if (!this.page || !this.isRealMode()) return; - const containerSelector = IRACING_SELECTORS.wizard.stepContainers[stepName]; - if (!containerSelector) { - this.log('warn', `Unknown wizard step: ${stepName}`); - return; - } - try { - this.log('debug', `Waiting for wizard step: ${stepName}`, { _selector: containerSelector }); - // Use 'attached' instead of 'visible' because iRacing wizard steps are marked as - // 'active hidden' in the DOM - they exist but are hidden via CSS class - await this.page.waitForSelector(containerSelector, { - state: 'attached', - timeout: 15000, - }); - // Brief pause to ensure DOM is settled - await this.page.waitForTimeout(100); - } catch (error) { - this.log('warn', `Wizard step not attached: ${stepName}`, { error: String(error) }); - // Don't throw - step might be combined with another or skipped - } - } - - /** - * Fill a form field with fallback selector support. - * Tries the primary selector first, then falls back to alternative selectors. - * This is needed because iRacing's form structure can vary slightly. - */ - private async fillFieldWithFallback(fieldName: string, value: string): Promise { - if (!this.page) { - return { success: false, fieldName, valueSet: value, error: 'Browser not connected' }; - } - - const selector = this.getFieldSelector(fieldName); - const timeout = this.isRealMode() ? IRACING_TIMEOUTS.elementWait : this.config.timeout; - - // Split combined selectors and try each one - const selectors = _selector.split(', ').map(s => s.trim()); - - for (const sel of selectors) { - try { - this.log('debug', `Trying _selector for ${fieldName}`, { _selector: sel }); - - // Check if element exists and is visible - const element = this.page.locator(sel).first(); - const isVisible = await element.isVisible().catch(() => false); - - if (isVisible) { - // Use 'attached' instead of 'visible' because iRacing wizard steps have class="hidden" - await element.waitFor({ state: 'attached', timeout }); - await element.fill(value); - this.log('info', `Successfully filled ${fieldName}`, { _selector: sel, value }); - return { success: true, fieldName, valueSet: value }; - } - } catch (error) { - this.log('debug', `Selector failed for ${fieldName}`, { _selector: sel, error: String(error) }); - } - } - - // If none worked, try the original combined selector (Playwright handles comma-separated) - try { - this.log('debug', `Trying combined selector for ${fieldName}`, { selector }); - // Use 'attached' instead of 'visible' because iRacing wizard steps have class="hidden" - await this.page.waitForSelector(_selector, { state: 'attached', timeout }); - await this.page.fill(selector, value); - return { success: true, fieldName, valueSet: value }; - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('error', `Failed to fill ${fieldName}`, { _selector, error: message }); - return { success: false, fieldName, valueSet: value, error: message }; - } - } - - /** - * Click the "Next" button in the wizard footer. - * In real iRacing, the next button text shows the next step name (e.g., "Server Details"). - * @param nextStepName The name of the next step (for logging and fallback) - */ - private async clickNextButton(nextStepName: string): Promise { - if (!this.page) { - throw new Error('Browser not connected'); - } - - if (!this.isRealMode()) { - // Mock mode uses data-action="next" - await this.clickAction('next'); - return; - } - - const timeout = IRACING_TIMEOUTS.elementWait; - - // Primary: Look for the next button with caret icon (it points to next step) - const nextButtonSelector = IRACING_SELECTORS.wizard.nextButton; - - // Fallback: Look for button with the next step name - const fallbackSelector = `.wizard-footer a.btn:has-text("${nextStepName}")`; - - try { - // Attempt primary selector first using a forced safe click. - // Some wizard footer buttons are present/attached but not considered "visible" by Playwright - // (offscreen, overlapped by overlays, or transitional). Use a forced safe click first, - // then fall back to name-based or last-resort selectors if that fails. - this.log('debug', 'Attempting next button (primary) with forced click', { _selector: nextButtonSelector }); - try { - await this.safeClick(nextButtonSelector, { timeout, force: true }); - this.log('info', `Clicked next button to ${nextStepName} (primary forced)`); - return; - } catch (e) { - this.log('debug', 'Primary forced click failed, falling back', { error: String(e) }); - } - - // Try fallback with step name (also attempt forced click) - this.log('debug', 'Trying fallback next button (forced)', { _selector: fallbackSelector }); - try { - await this.safeClick(fallbackSelector, { timeout, force: true }); - this.log('info', `Clicked next button (fallback) to ${nextStepName}`); - return; - } catch (e) { - this.log('debug', 'Fallback forced click failed, trying last resort', { error: String(e) }); - } - - // Last resort: any non-disabled button in wizard footer (use forced click) - const lastResort = '.wizard-footer a.btn:not(.disabled):last-child'; - await this.safeClick(lastResort, { timeout, force: true }); - this.log('info', `Clicked next button (last resort) to ${nextStepName}`); - } catch (error) { - const message = error instanceof Error ? error.message : String(error); - this.log('error', `Failed to click next button to ${nextStepName}`, { error: message }); - throw new Error(`Failed to navigate to ${nextStepName}: ${message}`); - } - } async clickAction(action: string): Promise { if (!this.page) { @@ -2837,66 +2180,6 @@ export class PlaywrightAutomationAdapter implements IBrowserAutomation, Authenti return this.authService.getLoginUrl(); } - /** - * Wait for login success by monitoring the page URL. - * Login is successful when: - * - URL contains 'members.iracing.com' AND - * - URL does NOT contain 'oauth.iracing.com' (login page) - * - * @param timeoutMs Maximum time to wait for login (default: 5 minutes) - * @returns true if login was detected, false if timeout - */ - private async waitForLoginSuccess(timeoutMs = 300000): Promise { - if (!this.page) { - return false; - } - - const startTime = Date.now(); - this.log('info', 'Waiting for login success', { timeoutMs }); - - while (Date.now() - startTime < timeoutMs) { - try { - const url = this.page.url(); - - // Success: User is on members site (not oauth login page) - // Check for various success indicators: - // - URL contains members.iracing.com but not oauth.iracing.com - // - Or URL is the hosted sessions page - const isOnMembersSite = url.includes('members.iracing.com'); - const isOnLoginPage = url.includes('oauth.iracing.com') || - url.includes('/membersite/login') || - url.includes('/login.jsp'); - - if (isOnMembersSite && !isOnLoginPage) { - this.log('info', 'Login success detected', { url }); - return true; - } - - // Check if page is closed (user closed the browser) - if (this.page.isClosed()) { - this.log('warn', 'Browser page was closed by user'); - return false; - } - - // Wait before checking again - await new Promise(resolve => setTimeout(resolve, 1000)); - } catch (error) { - // Page might be navigating or closed - const message = error instanceof Error ? error.message : String(error); - this.log('debug', 'Error checking URL during login wait', { error: message }); - - // If we can't access the page, it might be closed - if (!this.page || this.page.isClosed()) { - return false; - } - - await new Promise(resolve => setTimeout(resolve, 500)); - } - } - - this.log('warn', 'Login wait timed out'); - return false; - } /** * Initiate login by opening the Playwright browser to the iRacing login page. diff --git a/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightBrowserSession.ts b/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightBrowserSession.ts index 3e1494ccb..95b5843e0 100644 --- a/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightBrowserSession.ts +++ b/apps/companion/main/automation/infrastructure/adapters/automation/core/PlaywrightBrowserSession.ts @@ -1,8 +1,8 @@ +import * as fs from 'fs'; +import * as path from 'path'; import { Browser, BrowserContext, Page } from 'playwright'; import { chromium } from 'playwright-extra'; import StealthPlugin from 'puppeteer-extra-plugin-stealth'; -import * as fs from 'fs'; -import * as path from 'path'; import type { LoggerPort } from 'apps/companion/main/automation/application/ports/LoggerPort'; diff --git a/apps/companion/main/automation/infrastructure/adapters/automation/core/WizardStepOrchestrator.ts b/apps/companion/main/automation/infrastructure/adapters/automation/core/WizardStepOrchestrator.ts index 40d4feeb2..4e1bd8c3e 100644 --- a/apps/companion/main/automation/infrastructure/adapters/automation/core/WizardStepOrchestrator.ts +++ b/apps/companion/main/automation/infrastructure/adapters/automation/core/WizardStepOrchestrator.ts @@ -1,24 +1,24 @@ import type { Page } from 'playwright'; -import { StepId } from '../../../../domain/value-objects/StepId'; import type { AutomationResultDTO } from '../../../../application/dto/AutomationResultDTO'; import type { ClickResultDTO } from '../../../../application/dto/ClickResultDTO'; import type { FormFillResultDTO } from '../../../../application/dto/FormFillResultDTO'; import type { AuthenticationServicePort } from '../../../../application/ports/AuthenticationServicePort'; import type { LoggerPort } from '../../../../application/ports/LoggerPort'; +import { CheckoutConfirmation } from '../../../../domain/value-objects/CheckoutConfirmation'; import { CheckoutPrice } from '../../../../domain/value-objects/CheckoutPrice'; import { CheckoutState } from '../../../../domain/value-objects/CheckoutState'; -import { CheckoutConfirmation } from '../../../../domain/value-objects/CheckoutConfirmation'; +import { StepId } from '../../../../domain/value-objects/StepId'; +import { IRacingDomInteractor } from '../dom/RacingDomInteractor'; +import { IRacingDomNavigator } from '../dom/RacingDomNavigator'; +import { IRACING_SELECTORS } from '../dom/RacingSelectors'; import type { PlaywrightConfig } from './PlaywrightAutomationAdapter'; import { PlaywrightBrowserSession } from './PlaywrightBrowserSession'; -import { IRacingDomNavigator } from '../dom/RacingDomNavigator'; -import { IRacingDomInteractor } from '../dom/RacingDomInteractor'; -import { IRACING_SELECTORS } from '../dom/RacingSelectors'; -import type { - PageStateValidation, - PageStateValidationResult, -} from '../../../../domain/services/PageStateValidator'; import type { Result } from '@core/shared/domain/Result'; +import type { + PageStateValidation, + PageStateValidationResult, +} from '../../../../domain/services/PageStateValidator'; interface WizardStepOrchestratorDeps { config: Required; @@ -65,7 +65,6 @@ export class WizardStepOrchestrator { private readonly browserSession: PlaywrightBrowserSession; private readonly navigator: IRacingDomNavigator; private readonly interactor: IRacingDomInteractor; - private readonly authService: AuthenticationServicePort; private readonly logger: LoggerPort | undefined; private readonly totalSteps: number; private readonly getCheckoutConfirmationCallbackInternal: WizardStepOrchestratorDeps['getCheckoutConfirmationCallback']; @@ -79,7 +78,6 @@ export class WizardStepOrchestrator { this.browserSession = deps.browserSession; this.navigator = deps.navigator; this.interactor = deps.interactor; - this.authService = deps.authService; this.logger = deps.logger; this.totalSteps = deps.totalSteps; this.getCheckoutConfirmationCallbackInternal = diff --git a/core/admin/application/ports/AdminUserRepository.ts b/core/admin/application/ports/AdminUserRepository.ts index 0b08ab009..a780d4d42 100644 --- a/core/admin/application/ports/AdminUserRepository.ts +++ b/core/admin/application/ports/AdminUserRepository.ts @@ -1,6 +1,6 @@ import { AdminUser } from '../../domain/entities/AdminUser'; -import { UserId } from '../../domain/value-objects/UserId'; import { Email } from '../../domain/value-objects/Email'; +import { UserId } from '../../domain/value-objects/UserId'; import { UserRole } from '../../domain/value-objects/UserRole'; import { UserStatus } from '../../domain/value-objects/UserStatus'; diff --git a/core/admin/application/use-cases/ListUsersUseCase.test.ts b/core/admin/application/use-cases/ListUsersUseCase.test.ts index 6f1fcab24..39f63bb66 100644 --- a/core/admin/application/use-cases/ListUsersUseCase.test.ts +++ b/core/admin/application/use-cases/ListUsersUseCase.test.ts @@ -1,8 +1,8 @@ -import { vi, describe, it, expect, beforeEach } from 'vitest'; -import { ListUsersUseCase } from './ListUsersUseCase'; -import { AdminUserRepository } from '../ports/AdminUserRepository'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { AdminUser } from '../../domain/entities/AdminUser'; import { AuthorizationService } from '../../domain/services/AuthorizationService'; +import { AdminUserRepository } from '../ports/AdminUserRepository'; +import { ListUsersUseCase } from './ListUsersUseCase'; // Mock the authorization service vi.mock('../../domain/services/AuthorizationService'); diff --git a/core/admin/application/use-cases/ListUsersUseCase.ts b/core/admin/application/use-cases/ListUsersUseCase.ts index 2090c624e..aecc87eef 100644 --- a/core/admin/application/use-cases/ListUsersUseCase.ts +++ b/core/admin/application/use-cases/ListUsersUseCase.ts @@ -1,12 +1,12 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { AdminUserRepository } from '../ports/AdminUserRepository'; +import type { AdminUser } from '../../domain/entities/AdminUser'; import { AuthorizationService } from '../../domain/services/AuthorizationService'; +import { Email } from '../../domain/value-objects/Email'; import { UserId } from '../../domain/value-objects/UserId'; import { UserRole } from '../../domain/value-objects/UserRole'; import { UserStatus } from '../../domain/value-objects/UserStatus'; -import { Email } from '../../domain/value-objects/Email'; -import type { AdminUser } from '../../domain/entities/AdminUser'; +import type { AdminUserRepository } from '../ports/AdminUserRepository'; export type ListUsersInput = { actorId: string; diff --git a/core/admin/domain/entities/AdminUser.test.ts b/core/admin/domain/entities/AdminUser.test.ts index a50334427..8c9b65f9a 100644 --- a/core/admin/domain/entities/AdminUser.test.ts +++ b/core/admin/domain/entities/AdminUser.test.ts @@ -1,5 +1,6 @@ -import { AdminUser } from './AdminUser'; +import { describe, expect, it } from 'vitest'; import { UserRole } from '../value-objects/UserRole'; +import { AdminUser } from './AdminUser'; describe('AdminUser', () => { describe('TDD - Test First', () => { diff --git a/core/admin/domain/errors/AdminDomainError.ts b/core/admin/domain/errors/AdminDomainError.ts index eebde19a8..00046fe4b 100644 --- a/core/admin/domain/errors/AdminDomainError.ts +++ b/core/admin/domain/errors/AdminDomainError.ts @@ -1,4 +1,4 @@ -import type { DomainError, CommonDomainErrorKind } from '@core/shared/errors/DomainError'; +import type { CommonDomainErrorKind, DomainError } from '@core/shared/errors/DomainError'; export abstract class AdminDomainError extends Error implements DomainError { readonly type = 'domain' as const; diff --git a/core/admin/domain/repositories/AdminUserRepository.ts b/core/admin/domain/repositories/AdminUserRepository.ts index 14277adc7..06d05ce18 100644 --- a/core/admin/domain/repositories/AdminUserRepository.ts +++ b/core/admin/domain/repositories/AdminUserRepository.ts @@ -1,6 +1,6 @@ import { AdminUser } from '../entities/AdminUser'; -import { UserId } from '../value-objects/UserId'; import { Email } from '../value-objects/Email'; +import { UserId } from '../value-objects/UserId'; import { UserRole } from '../value-objects/UserRole'; import { UserStatus } from '../value-objects/UserStatus'; diff --git a/core/admin/domain/services/AuthorizationService.test.ts b/core/admin/domain/services/AuthorizationService.test.ts index 28d9c1cd8..111bc08a3 100644 --- a/core/admin/domain/services/AuthorizationService.test.ts +++ b/core/admin/domain/services/AuthorizationService.test.ts @@ -1,5 +1,5 @@ -import { AuthorizationService } from './AuthorizationService'; import { AdminUser } from '../entities/AdminUser'; +import { AuthorizationService } from './AuthorizationService'; describe('AuthorizationService', () => { describe('TDD - Test First', () => { diff --git a/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.test.ts b/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.test.ts index 78621d75c..c7fa74e39 100644 --- a/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.test.ts +++ b/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.test.ts @@ -1,7 +1,7 @@ -import { InMemoryAdminUserRepository } from './InMemoryAdminUserRepository'; import { AdminUser } from '../../domain/entities/AdminUser'; import { UserRole } from '../../domain/value-objects/UserRole'; import { UserStatus } from '../../domain/value-objects/UserStatus'; +import { InMemoryAdminUserRepository } from './InMemoryAdminUserRepository'; describe('InMemoryAdminUserRepository', () => { describe('TDD - Test First', () => { diff --git a/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.ts b/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.ts index 8d3bdb8ba..a537bd70d 100644 --- a/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.ts +++ b/core/admin/infrastructure/persistence/InMemoryAdminUserRepository.ts @@ -1,7 +1,7 @@ -import { AdminUserRepository, UserFilter, UserListQuery, UserListResult, StoredAdminUser } from '../../domain/repositories/AdminUserRepository'; import { AdminUser } from '../../domain/entities/AdminUser'; -import { UserId } from '../../domain/value-objects/UserId'; +import { AdminUserRepository, StoredAdminUser, UserFilter, UserListQuery, UserListResult } from '../../domain/repositories/AdminUserRepository'; import { Email } from '../../domain/value-objects/Email'; +import { UserId } from '../../domain/value-objects/UserId'; /** * In-memory implementation of AdminUserRepository for testing and development diff --git a/core/admin/infrastructure/typeorm/mappers/AdminUserOrmMapper.ts b/core/admin/infrastructure/typeorm/mappers/AdminUserOrmMapper.ts index ad6f11176..869f780f3 100644 --- a/core/admin/infrastructure/typeorm/mappers/AdminUserOrmMapper.ts +++ b/core/admin/infrastructure/typeorm/mappers/AdminUserOrmMapper.ts @@ -2,11 +2,11 @@ import { AdminUser } from '@core/admin/domain/entities/AdminUser'; import { AdminUserOrmEntity } from '../entities/AdminUserOrmEntity'; import { TypeOrmAdminSchemaError } from '../errors/TypeOrmAdminSchemaError'; import { - assertNonEmptyString, - assertStringArray, - assertDate, - assertOptionalDate, - assertOptionalString, + assertDate, + assertNonEmptyString, + assertOptionalDate, + assertOptionalString, + assertStringArray, } from '../schema/TypeOrmAdminSchemaGuards'; export class AdminUserOrmMapper { diff --git a/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.test.ts b/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.test.ts index b7b3793ba..9bee18c42 100644 --- a/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.test.ts +++ b/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.test.ts @@ -1,11 +1,11 @@ -import { DataSource } from 'typeorm'; -import { TypeOrmAdminUserRepository } from './TypeOrmAdminUserRepository'; -import { AdminUserOrmEntity } from '../entities/AdminUserOrmEntity'; import { AdminUser } from '@core/admin/domain/entities/AdminUser'; import { Email } from '@core/admin/domain/value-objects/Email'; import { UserId } from '@core/admin/domain/value-objects/UserId'; import { UserRole } from '@core/admin/domain/value-objects/UserRole'; import { UserStatus } from '@core/admin/domain/value-objects/UserStatus'; +import { DataSource } from 'typeorm'; +import { AdminUserOrmEntity } from '../entities/AdminUserOrmEntity'; +import { TypeOrmAdminUserRepository } from './TypeOrmAdminUserRepository'; describe('TypeOrmAdminUserRepository', () => { let dataSource: DataSource; diff --git a/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.ts b/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.ts index 5c1a40518..55ca30ceb 100644 --- a/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.ts +++ b/core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository.ts @@ -1,10 +1,10 @@ -import type { DataSource, Repository } from 'typeorm'; -import type { AdminUserRepository, UserListQuery, UserListResult, UserFilter, StoredAdminUser } from '@core/admin/domain/repositories/AdminUserRepository'; import { AdminUser } from '@core/admin/domain/entities/AdminUser'; -import { AdminUserOrmEntity } from '../entities/AdminUserOrmEntity'; -import { AdminUserOrmMapper } from '../mappers/AdminUserOrmMapper'; +import type { AdminUserRepository, StoredAdminUser, UserFilter, UserListQuery, UserListResult } from '@core/admin/domain/repositories/AdminUserRepository'; import { Email } from '@core/admin/domain/value-objects/Email'; import { UserId } from '@core/admin/domain/value-objects/UserId'; +import type { DataSource, Repository } from 'typeorm'; +import { AdminUserOrmEntity } from '../entities/AdminUserOrmEntity'; +import { AdminUserOrmMapper } from '../mappers/AdminUserOrmMapper'; export class TypeOrmAdminUserRepository implements AdminUserRepository { private readonly repository: Repository; diff --git a/core/analytics/application/use-cases/GetAnalyticsMetricsUseCase.ts b/core/analytics/application/use-cases/GetAnalyticsMetricsUseCase.ts index 6564f2088..269dc7945 100644 --- a/core/analytics/application/use-cases/GetAnalyticsMetricsUseCase.ts +++ b/core/analytics/application/use-cases/GetAnalyticsMetricsUseCase.ts @@ -1,5 +1,5 @@ -import type { Logger } from '@core/shared/domain/Logger'; import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { PageViewRepository } from '../repositories/PageViewRepository'; diff --git a/core/analytics/application/use-cases/GetDashboardDataUseCase.ts b/core/analytics/application/use-cases/GetDashboardDataUseCase.ts index a73a16101..73e541deb 100644 --- a/core/analytics/application/use-cases/GetDashboardDataUseCase.ts +++ b/core/analytics/application/use-cases/GetDashboardDataUseCase.ts @@ -1,5 +1,5 @@ -import type { Logger } from '@core/shared/domain/Logger'; import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; diff --git a/core/analytics/application/use-cases/GetEntityAnalyticsQuery.test.ts b/core/analytics/application/use-cases/GetEntityAnalyticsQuery.test.ts index 140646245..99a9e2501 100644 --- a/core/analytics/application/use-cases/GetEntityAnalyticsQuery.test.ts +++ b/core/analytics/application/use-cases/GetEntityAnalyticsQuery.test.ts @@ -1,9 +1,9 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; -import type { EntityType } from '../../domain/types/PageView'; -import { GetEntityAnalyticsQuery, type GetEntityAnalyticsInput } from './GetEntityAnalyticsQuery'; -import type { PageViewRepository } from '../repositories/PageViewRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { EngagementRepository } from '../../domain/repositories/EngagementRepository'; +import type { EntityType } from '../../domain/types/PageView'; +import type { PageViewRepository } from '../repositories/PageViewRepository'; +import { GetEntityAnalyticsQuery, type GetEntityAnalyticsInput } from './GetEntityAnalyticsQuery'; describe('GetEntityAnalyticsQuery', () => { let pageViewRepository: { diff --git a/core/analytics/application/use-cases/GetEntityAnalyticsQuery.ts b/core/analytics/application/use-cases/GetEntityAnalyticsQuery.ts index 2477ae2e8..ad361bcd4 100644 --- a/core/analytics/application/use-cases/GetEntityAnalyticsQuery.ts +++ b/core/analytics/application/use-cases/GetEntityAnalyticsQuery.ts @@ -5,14 +5,14 @@ * Returns metrics formatted for display to sponsors and admins. */ +import type { EngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; import type { AsyncUseCase } from '@core/shared/application/AsyncUseCase'; import type { Logger } from '@core/shared/domain/Logger'; -import type { PageViewRepository } from '../repositories/PageViewRepository'; -import type { EngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; -import type { EntityType } from '../../domain/types/PageView'; -import type { SnapshotPeriod } from '../../domain/types/AnalyticsSnapshot'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { SnapshotPeriod } from '../../domain/types/AnalyticsSnapshot'; +import type { EntityType } from '../../domain/types/PageView'; +import type { PageViewRepository } from '../repositories/PageViewRepository'; export interface GetEntityAnalyticsInput { entityType: EntityType; diff --git a/core/analytics/application/use-cases/RecordEngagementUseCase.test.ts b/core/analytics/application/use-cases/RecordEngagementUseCase.test.ts index 1c916f8e6..24254fad8 100644 --- a/core/analytics/application/use-cases/RecordEngagementUseCase.test.ts +++ b/core/analytics/application/use-cases/RecordEngagementUseCase.test.ts @@ -1,9 +1,9 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { EngagementEvent } from '../../domain/entities/EngagementEvent'; +import type { EngagementRepository } from '../../domain/repositories/EngagementRepository'; import type { EngagementAction, EngagementEntityType } from '../../domain/types/EngagementEvent'; import { RecordEngagementUseCase, type RecordEngagementInput } from './RecordEngagementUseCase'; -import type { EngagementRepository } from '../../domain/repositories/EngagementRepository'; describe('RecordEngagementUseCase', () => { let engagementRepository: { diff --git a/core/analytics/application/use-cases/RecordEngagementUseCase.ts b/core/analytics/application/use-cases/RecordEngagementUseCase.ts index 5d1a9d311..12b2a1178 100644 --- a/core/analytics/application/use-cases/RecordEngagementUseCase.ts +++ b/core/analytics/application/use-cases/RecordEngagementUseCase.ts @@ -1,5 +1,5 @@ -import type { Logger } from '@core/shared/domain/Logger'; import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { EngagementEvent } from '../../domain/entities/EngagementEvent'; diff --git a/core/analytics/application/use-cases/RecordPageViewUseCase.ts b/core/analytics/application/use-cases/RecordPageViewUseCase.ts index 086afc497..f7a762e18 100644 --- a/core/analytics/application/use-cases/RecordPageViewUseCase.ts +++ b/core/analytics/application/use-cases/RecordPageViewUseCase.ts @@ -1,10 +1,10 @@ -import type { Logger } from '@core/shared/domain/Logger'; import type { UseCase } from '@core/shared/application/UseCase'; -import type { PageViewRepository } from '../repositories/PageViewRepository'; -import { PageView } from '../../domain/entities/PageView'; -import type { EntityType, VisitorType } from '../../domain/types/PageView'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { PageView } from '../../domain/entities/PageView'; +import type { EntityType, VisitorType } from '../../domain/types/PageView'; +import type { PageViewRepository } from '../repositories/PageViewRepository'; export interface RecordPageViewInput { entityType: EntityType; diff --git a/core/analytics/domain/entities/PageView.ts b/core/analytics/domain/entities/PageView.ts index fe176de66..2d1e8d513 100644 --- a/core/analytics/domain/entities/PageView.ts +++ b/core/analytics/domain/entities/PageView.ts @@ -9,7 +9,6 @@ import { Entity } from '@core/shared/domain/Entity'; import type { EntityType, PageViewProps, VisitorType } from '../types/PageView'; import { AnalyticsEntityId } from '../value-objects/AnalyticsEntityId'; import { AnalyticsSessionId } from '../value-objects/AnalyticsSessionId'; -import { PageViewId } from '../value-objects/PageViewId'; export type { EntityType, VisitorType } from '../types/PageView'; @@ -23,13 +22,11 @@ export class PageView extends Entity { readonly timestamp: Date; readonly durationMs: number | undefined; - private readonly idVo: PageViewId; private readonly entityIdVo: AnalyticsEntityId; private readonly sessionIdVo: AnalyticsSessionId; private constructor(props: PageViewProps) { super(props.id); - this.idVo = PageViewId.create(props.id); this.entityType = props.entityType; this.entityIdVo = AnalyticsEntityId.create(props.entityId); this.visitorId = props.visitorId; diff --git a/core/analytics/domain/repositories/AnalyticsSnapshotRepository.ts b/core/analytics/domain/repositories/AnalyticsSnapshotRepository.ts index 633acd4eb..054d9ed3e 100644 --- a/core/analytics/domain/repositories/AnalyticsSnapshotRepository.ts +++ b/core/analytics/domain/repositories/AnalyticsSnapshotRepository.ts @@ -4,7 +4,7 @@ * Defines persistence operations for AnalyticsSnapshot entities. */ -import type { AnalyticsSnapshot, SnapshotPeriod, SnapshotEntityType } from '../entities/AnalyticsSnapshot'; +import type { AnalyticsSnapshot, SnapshotEntityType, SnapshotPeriod } from '../entities/AnalyticsSnapshot'; export interface AnalyticsSnapshotRepository { save(snapshot: AnalyticsSnapshot): Promise; diff --git a/core/analytics/domain/repositories/EngagementRepository.ts b/core/analytics/domain/repositories/EngagementRepository.ts index 987a2307f..1526f7a79 100644 --- a/core/analytics/domain/repositories/EngagementRepository.ts +++ b/core/analytics/domain/repositories/EngagementRepository.ts @@ -1,4 +1,4 @@ -import type { EngagementEvent, EngagementAction, EngagementEntityType } from '../entities/EngagementEvent'; +import type { EngagementAction, EngagementEntityType, EngagementEvent } from '../entities/EngagementEvent'; export interface EngagementRepository { save(event: EngagementEvent): Promise; diff --git a/core/identity/EmailValidation.test.ts b/core/identity/EmailValidation.test.ts index 1f2cff974..ca38cb816 100644 --- a/core/identity/EmailValidation.test.ts +++ b/core/identity/EmailValidation.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; -import { validateEmail, isDisposableEmail } from '@core/identity/domain/value-objects/EmailAddress'; +import { isDisposableEmail, validateEmail } from '@core/identity/domain/value-objects/EmailAddress'; describe('identity-domain email validation', () => { it('accepts a valid email and normalizes it', () => { diff --git a/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.test.ts b/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.test.ts index 726522565..22ee2bb6a 100644 --- a/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.test.ts +++ b/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.test.ts @@ -3,14 +3,14 @@ */ import { ExternalGameRatingProfile } from '../../domain/entities/ExternalGameRatingProfile'; +import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; +import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; import { ExternalRating } from '../../domain/value-objects/ExternalRating'; import { ExternalRatingProvenance } from '../../domain/value-objects/ExternalRatingProvenance'; import { GameKey } from '../../domain/value-objects/GameKey'; -import { UserRating } from '../../domain/value-objects/UserRating'; import { UserId } from '../../domain/value-objects/UserId'; +import { UserRating } from '../../domain/value-objects/UserRating'; import { GetLeagueEligibilityPreviewQuery, GetLeagueEligibilityPreviewQueryHandler } from './GetLeagueEligibilityPreviewQuery'; -import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; -import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; describe('GetLeagueEligibilityPreviewQuery', () => { let mockUserRatingRepo: UserRatingRepository; diff --git a/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.ts b/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.ts index 03f0c5728..715b11ad3 100644 --- a/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.ts +++ b/core/identity/application/queries/GetLeagueEligibilityPreviewQuery.ts @@ -5,10 +5,10 @@ * Uses EligibilityEvaluator to provide explainable results. */ -import { EvaluationResultDto, EligibilityFilterDto } from '../../domain/types/Eligibility'; -import { EligibilityEvaluator, RatingData } from '../../domain/services/EligibilityEvaluator'; -import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; +import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; +import { EligibilityEvaluator, RatingData } from '../../domain/services/EligibilityEvaluator'; +import { EligibilityFilterDto, EvaluationResultDto } from '../../domain/types/Eligibility'; export interface GetLeagueEligibilityPreviewQuery { userId: string; diff --git a/core/identity/application/queries/GetUserRatingLedgerQuery.ts b/core/identity/application/queries/GetUserRatingLedgerQuery.ts index bcd0f4593..25160ff0b 100644 --- a/core/identity/application/queries/GetUserRatingLedgerQuery.ts +++ b/core/identity/application/queries/GetUserRatingLedgerQuery.ts @@ -4,8 +4,8 @@ * Paginated/filtered query for user rating events (ledger). */ +import { PaginatedQueryOptions, RatingEventFilter, RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { LedgerEntryDto, LedgerFilter, PaginatedLedgerResult } from '../dtos/LedgerEntryDto'; -import { RatingEventRepository, PaginatedQueryOptions, RatingEventFilter } from '../../domain/repositories/RatingEventRepository'; export interface GetUserRatingLedgerQuery { userId: string; diff --git a/core/identity/application/queries/GetUserRatingsSummaryQuery.test.ts b/core/identity/application/queries/GetUserRatingsSummaryQuery.test.ts index 73e2f0af4..333191912 100644 --- a/core/identity/application/queries/GetUserRatingsSummaryQuery.test.ts +++ b/core/identity/application/queries/GetUserRatingsSummaryQuery.test.ts @@ -2,20 +2,20 @@ * Tests for GetUserRatingsSummaryQuery */ -import { describe, expect, it, beforeEach, vi, type Mock } from 'vitest'; -import { GetUserRatingsSummaryQuery, GetUserRatingsSummaryQueryHandler } from './GetUserRatingsSummaryQuery'; -import { UserRating } from '../../domain/value-objects/UserRating'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { ExternalGameRatingProfile } from '../../domain/entities/ExternalGameRatingProfile'; -import { GameKey } from '../../domain/value-objects/GameKey'; -import { ExternalRating } from '../../domain/value-objects/ExternalRating'; -import { ExternalRatingProvenance } from '../../domain/value-objects/ExternalRatingProvenance'; import { RatingEvent } from '../../domain/entities/RatingEvent'; -import { RatingEventId } from '../../domain/value-objects/RatingEventId'; -import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; -import { RatingDelta } from '../../domain/value-objects/RatingDelta'; -import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; +import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; +import { ExternalRating } from '../../domain/value-objects/ExternalRating'; +import { ExternalRatingProvenance } from '../../domain/value-objects/ExternalRatingProvenance'; +import { GameKey } from '../../domain/value-objects/GameKey'; +import { RatingDelta } from '../../domain/value-objects/RatingDelta'; +import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; +import { RatingEventId } from '../../domain/value-objects/RatingEventId'; +import { UserRating } from '../../domain/value-objects/UserRating'; +import { GetUserRatingsSummaryQuery, GetUserRatingsSummaryQueryHandler } from './GetUserRatingsSummaryQuery'; import { UserId } from '../../domain/value-objects/UserId'; diff --git a/core/identity/application/queries/GetUserRatingsSummaryQuery.ts b/core/identity/application/queries/GetUserRatingsSummaryQuery.ts index 82f2bf5fb..e07feaaf0 100644 --- a/core/identity/application/queries/GetUserRatingsSummaryQuery.ts +++ b/core/identity/application/queries/GetUserRatingsSummaryQuery.ts @@ -5,10 +5,10 @@ * Combines platform snapshots and external game ratings. */ -import { RatingSummaryDto } from '../dtos/RatingSummaryDto'; -import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; +import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; +import { RatingSummaryDto } from '../dtos/RatingSummaryDto'; export interface GetUserRatingsSummaryQuery { userId: string; diff --git a/core/identity/application/use-cases/AdminVoteSessionUseCases.test.ts b/core/identity/application/use-cases/AdminVoteSessionUseCases.test.ts index 5a39610c0..a6eee5c04 100644 --- a/core/identity/application/use-cases/AdminVoteSessionUseCases.test.ts +++ b/core/identity/application/use-cases/AdminVoteSessionUseCases.test.ts @@ -1,13 +1,13 @@ -import { OpenAdminVoteSessionUseCase } from './OpenAdminVoteSessionUseCase'; -import { CastAdminVoteUseCase } from './CastAdminVoteUseCase'; -import { CloseAdminVoteSessionUseCase } from './CloseAdminVoteSessionUseCase'; import { AdminVoteSession } from '../../domain/entities/AdminVoteSession'; import { RatingEvent } from '../../domain/entities/RatingEvent'; -import { UserRating } from '../../domain/value-objects/UserRating'; -import { RatingEventId } from '../../domain/value-objects/RatingEventId'; -import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; -import { RatingDelta } from '../../domain/value-objects/RatingDelta'; import { RatingSnapshotCalculator } from '../../domain/services/RatingSnapshotCalculator'; +import { RatingDelta } from '../../domain/value-objects/RatingDelta'; +import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; +import { RatingEventId } from '../../domain/value-objects/RatingEventId'; +import { UserRating } from '../../domain/value-objects/UserRating'; +import { CastAdminVoteUseCase } from './CastAdminVoteUseCase'; +import { CloseAdminVoteSessionUseCase } from './CloseAdminVoteSessionUseCase'; +import { OpenAdminVoteSessionUseCase } from './OpenAdminVoteSessionUseCase'; // Mock Repository class MockAdminVoteSessionRepository { diff --git a/core/identity/application/use-cases/AppendRatingEventsUseCase.test.ts b/core/identity/application/use-cases/AppendRatingEventsUseCase.test.ts index 805954333..9a0744368 100644 --- a/core/identity/application/use-cases/AppendRatingEventsUseCase.test.ts +++ b/core/identity/application/use-cases/AppendRatingEventsUseCase.test.ts @@ -1,8 +1,8 @@ -import { describe, expect, it, vi, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; -import { AppendRatingEventsUseCase, AppendRatingEventsInput } from './AppendRatingEventsUseCase'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; +import { AppendRatingEventsInput, AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; describe('AppendRatingEventsUseCase', () => { let mockEventRepo: Partial; diff --git a/core/identity/application/use-cases/AppendRatingEventsUseCase.ts b/core/identity/application/use-cases/AppendRatingEventsUseCase.ts index 4fa1b5ba7..24ad2e7cd 100644 --- a/core/identity/application/use-cases/AppendRatingEventsUseCase.ts +++ b/core/identity/application/use-cases/AppendRatingEventsUseCase.ts @@ -1,11 +1,11 @@ +import { RatingEvent, type RatingEventProps } from '../../domain/entities/RatingEvent'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; import { RatingEventFactory } from '../../domain/services/RatingEventFactory'; import { RatingSnapshotCalculator } from '../../domain/services/RatingSnapshotCalculator'; -import { RatingEvent, type RatingEventProps } from '../../domain/entities/RatingEvent'; -import { RatingEventId } from '../../domain/value-objects/RatingEventId'; -import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; import { RatingDelta } from '../../domain/value-objects/RatingDelta'; +import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; +import { RatingEventId } from '../../domain/value-objects/RatingEventId'; import { CreateRatingEventDto } from '../dtos/CreateRatingEventDto'; /** diff --git a/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.ts b/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.ts index 1b83439b4..b70396476 100644 --- a/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.ts +++ b/core/identity/application/use-cases/CloseAdminVoteSessionUseCase.ts @@ -1,10 +1,10 @@ +import { AdminVoteOutcome, AdminVoteSession } from '../../domain/entities/AdminVoteSession'; import { AdminVoteSessionRepository } from '../../domain/repositories/AdminVoteSessionRepository'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; -import { RatingSnapshotCalculator } from '../../domain/services/RatingSnapshotCalculator'; import { RatingEventFactory } from '../../domain/services/RatingEventFactory'; +import { RatingSnapshotCalculator } from '../../domain/services/RatingSnapshotCalculator'; import { CloseAdminVoteSessionInput, CloseAdminVoteSessionOutput } from '../dtos/AdminVoteSessionDto'; -import { AdminVoteSession, AdminVoteOutcome } from '../../domain/entities/AdminVoteSession'; /** * Use Case: CloseAdminVoteSessionUseCase diff --git a/core/identity/application/use-cases/ForgotPasswordUseCase.test.ts b/core/identity/application/use-cases/ForgotPasswordUseCase.test.ts index ff2932848..c0759ba3d 100644 --- a/core/identity/application/use-cases/ForgotPasswordUseCase.test.ts +++ b/core/identity/application/use-cases/ForgotPasswordUseCase.test.ts @@ -1,13 +1,13 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { User } from '../../domain/entities/User'; -import { PasswordHash } from '../../domain/value-objects/PasswordHash'; -import { UserId } from '../../domain/value-objects/UserId'; -import { ForgotPasswordUseCase } from './ForgotPasswordUseCase'; import type { AuthRepository } from '../../domain/repositories/AuthRepository'; import type { MagicLinkRepository } from '../../domain/repositories/MagicLinkRepository'; +import { PasswordHash } from '../../domain/value-objects/PasswordHash'; +import { UserId } from '../../domain/value-objects/UserId'; import type { MagicLinkNotificationPort } from '../ports/MagicLinkNotificationPort'; +import { ForgotPasswordUseCase } from './ForgotPasswordUseCase'; describe('ForgotPasswordUseCase', () => { let authRepo: { diff --git a/core/identity/application/use-cases/ForgotPasswordUseCase.ts b/core/identity/application/use-cases/ForgotPasswordUseCase.ts index d962f91df..504f1c065 100644 --- a/core/identity/application/use-cases/ForgotPasswordUseCase.ts +++ b/core/identity/application/use-cases/ForgotPasswordUseCase.ts @@ -1,12 +1,12 @@ -import { EmailAddress } from '../../domain/value-objects/EmailAddress'; -import { AuthRepository } from '../../domain/repositories/AuthRepository'; -import { MagicLinkRepository } from '../../domain/repositories/MagicLinkRepository'; -import { MagicLinkNotificationPort } from '../../domain/ports/MagicLinkNotificationPort'; +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; import { randomBytes } from 'crypto'; +import { MagicLinkNotificationPort } from '../../domain/ports/MagicLinkNotificationPort'; +import { AuthRepository } from '../../domain/repositories/AuthRepository'; +import { MagicLinkRepository } from '../../domain/repositories/MagicLinkRepository'; +import { EmailAddress } from '../../domain/value-objects/EmailAddress'; export type ForgotPasswordInput = { email: string; diff --git a/core/identity/application/use-cases/GetCurrentSessionUseCase.test.ts b/core/identity/application/use-cases/GetCurrentSessionUseCase.test.ts index c5579c2d4..4c2531e79 100644 --- a/core/identity/application/use-cases/GetCurrentSessionUseCase.test.ts +++ b/core/identity/application/use-cases/GetCurrentSessionUseCase.test.ts @@ -1,5 +1,5 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { vi, type Mock, beforeEach, describe, it, expect } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { User } from '../../domain/entities/User'; import { StoredUser, type UserRepository } from '../../domain/repositories/UserRepository'; import { GetCurrentSessionUseCase } from './GetCurrentSessionUseCase'; diff --git a/core/identity/application/use-cases/GetCurrentSessionUseCase.ts b/core/identity/application/use-cases/GetCurrentSessionUseCase.ts index 69b659e94..04b768250 100644 --- a/core/identity/application/use-cases/GetCurrentSessionUseCase.ts +++ b/core/identity/application/use-cases/GetCurrentSessionUseCase.ts @@ -1,5 +1,5 @@ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { User } from '../../domain/entities/User'; import { UserRepository } from '../../domain/repositories/UserRepository'; diff --git a/core/identity/application/use-cases/GetUserUseCase.test.ts b/core/identity/application/use-cases/GetUserUseCase.test.ts index fe9f948fa..361eb8e0f 100644 --- a/core/identity/application/use-cases/GetUserUseCase.test.ts +++ b/core/identity/application/use-cases/GetUserUseCase.test.ts @@ -1,7 +1,7 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; -import { GetUserUseCase } from './GetUserUseCase'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { UserRepository } from '../../domain/repositories/UserRepository'; +import { GetUserUseCase } from './GetUserUseCase'; describe('GetUserUseCase', () => { let userRepo: { diff --git a/core/identity/application/use-cases/GetUserUseCase.ts b/core/identity/application/use-cases/GetUserUseCase.ts index a1adc48b0..5922f9840 100644 --- a/core/identity/application/use-cases/GetUserUseCase.ts +++ b/core/identity/application/use-cases/GetUserUseCase.ts @@ -1,9 +1,9 @@ -import { User } from '../../domain/entities/User'; -import { UserRepository } from '../../domain/repositories/UserRepository'; +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; +import { User } from '../../domain/entities/User'; +import { UserRepository } from '../../domain/repositories/UserRepository'; export type GetUserInput = { userId: string; diff --git a/core/identity/application/use-cases/LoginUseCase.test.ts b/core/identity/application/use-cases/LoginUseCase.test.ts index 32f8c3599..9c168d57e 100644 --- a/core/identity/application/use-cases/LoginUseCase.test.ts +++ b/core/identity/application/use-cases/LoginUseCase.test.ts @@ -1,11 +1,11 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { User } from '../../domain/entities/User'; +import type { AuthRepository } from '../../domain/repositories/AuthRepository'; import { PasswordHash } from '../../domain/value-objects/PasswordHash'; import { UserId } from '../../domain/value-objects/UserId'; -import { LoginUseCase } from './LoginUseCase'; -import type { AuthRepository } from '../../domain/repositories/AuthRepository'; import type { PasswordHashingService } from '../ports/PasswordHashingService'; +import { LoginUseCase } from './LoginUseCase'; describe('LoginUseCase', () => { let authRepo: { diff --git a/core/identity/application/use-cases/LoginUseCase.ts b/core/identity/application/use-cases/LoginUseCase.ts index d0cff8be0..bc9d6ff3d 100644 --- a/core/identity/application/use-cases/LoginUseCase.ts +++ b/core/identity/application/use-cases/LoginUseCase.ts @@ -1,11 +1,11 @@ -import { EmailAddress } from '../../domain/value-objects/EmailAddress'; +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { User } from '../../domain/entities/User'; import { AuthRepository } from '../../domain/repositories/AuthRepository'; import { PasswordHashingService } from '../../domain/services/PasswordHashingService'; -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; +import { EmailAddress } from '../../domain/value-objects/EmailAddress'; export type LoginInput = { email: string; diff --git a/core/identity/application/use-cases/LoginWithEmailUseCase.ts b/core/identity/application/use-cases/LoginWithEmailUseCase.ts index 48da514b8..bda67bb31 100644 --- a/core/identity/application/use-cases/LoginWithEmailUseCase.ts +++ b/core/identity/application/use-cases/LoginWithEmailUseCase.ts @@ -4,12 +4,12 @@ * Authenticates a user with email and password. */ -import { PasswordHash } from '../../domain/value-objects/PasswordHash'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { IdentitySessionPort } from '../ports/IdentitySessionPort'; import { UserRepository } from '../../domain/repositories/UserRepository'; +import { PasswordHash } from '../../domain/value-objects/PasswordHash'; +import type { IdentitySessionPort } from '../ports/IdentitySessionPort'; export type LoginWithEmailInput = { email: string; diff --git a/core/identity/application/use-cases/LogoutUseCase.ts b/core/identity/application/use-cases/LogoutUseCase.ts index cbd43d042..e26ad9153 100644 --- a/core/identity/application/use-cases/LogoutUseCase.ts +++ b/core/identity/application/use-cases/LogoutUseCase.ts @@ -1,8 +1,8 @@ -import type { IdentitySessionPort } from '../ports/IdentitySessionPort'; +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; +import type { IdentitySessionPort } from '../ports/IdentitySessionPort'; export type LogoutInput = {}; diff --git a/core/identity/application/use-cases/OpenAdminVoteSessionUseCase.ts b/core/identity/application/use-cases/OpenAdminVoteSessionUseCase.ts index 748d2596b..22b94f6fd 100644 --- a/core/identity/application/use-cases/OpenAdminVoteSessionUseCase.ts +++ b/core/identity/application/use-cases/OpenAdminVoteSessionUseCase.ts @@ -1,5 +1,5 @@ -import { AdminVoteSessionRepository } from '../../domain/repositories/AdminVoteSessionRepository'; import { AdminVoteSession } from '../../domain/entities/AdminVoteSession'; +import { AdminVoteSessionRepository } from '../../domain/repositories/AdminVoteSessionRepository'; import { OpenAdminVoteSessionInput, OpenAdminVoteSessionOutput } from '../dtos/AdminVoteSessionDto'; /** diff --git a/core/identity/application/use-cases/RecomputeUserRatingSnapshotUseCase.test.ts b/core/identity/application/use-cases/RecomputeUserRatingSnapshotUseCase.test.ts index c469cfbf8..b7c7efb7b 100644 --- a/core/identity/application/use-cases/RecomputeUserRatingSnapshotUseCase.test.ts +++ b/core/identity/application/use-cases/RecomputeUserRatingSnapshotUseCase.test.ts @@ -1,13 +1,13 @@ -import { describe, expect, it, vi, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; -import { RecomputeUserRatingSnapshotUseCase } from './RecomputeUserRatingSnapshotUseCase'; +import { RatingEvent } from '../../domain/entities/RatingEvent'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; -import { UserRating } from '../../domain/value-objects/UserRating'; -import { RatingEvent } from '../../domain/entities/RatingEvent'; -import { RatingEventId } from '../../domain/value-objects/RatingEventId'; -import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; import { RatingDelta } from '../../domain/value-objects/RatingDelta'; +import { RatingDimensionKey } from '../../domain/value-objects/RatingDimensionKey'; +import { RatingEventId } from '../../domain/value-objects/RatingEventId'; +import { UserRating } from '../../domain/value-objects/UserRating'; +import { RecomputeUserRatingSnapshotUseCase } from './RecomputeUserRatingSnapshotUseCase'; describe('RecomputeUserRatingSnapshotUseCase', () => { let mockEventRepo: Partial; diff --git a/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.integration.test.ts b/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.integration.test.ts index 328f24e44..6f311e771 100644 --- a/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.integration.test.ts +++ b/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.integration.test.ts @@ -1,11 +1,11 @@ -import { RecordRaceRatingEventsUseCase } from './RecordRaceRatingEventsUseCase'; -import { RaceResultsProvider, RaceResultsData } from '../ports/RaceResultsProvider'; +import { RatingEvent } from '../../domain/entities/RatingEvent'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; -import { AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; -import { UserRating } from '../../domain/value-objects/UserRating'; -import { RatingEvent } from '../../domain/entities/RatingEvent'; import { RatingEventId } from '../../domain/value-objects/RatingEventId'; +import { UserRating } from '../../domain/value-objects/UserRating'; +import { RaceResultsData, RaceResultsProvider } from '../ports/RaceResultsProvider'; +import { AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; +import { RecordRaceRatingEventsUseCase } from './RecordRaceRatingEventsUseCase'; // In-memory implementations for integration testing class InMemoryRaceResultsProvider implements RaceResultsProvider { diff --git a/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.test.ts b/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.test.ts index 772f65bae..6c233fce0 100644 --- a/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.test.ts +++ b/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.test.ts @@ -1,12 +1,12 @@ -import { RecordRaceRatingEventsUseCase } from './RecordRaceRatingEventsUseCase'; -import { RaceResultsProvider, RaceResultsData } from '../ports/RaceResultsProvider'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { RatingEvent } from '../../domain/entities/RatingEvent'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; -import { AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; -import { UserRating } from '../../domain/value-objects/UserRating'; -import { RatingEvent } from '../../domain/entities/RatingEvent'; import { RatingEventId } from '../../domain/value-objects/RatingEventId'; -import { describe, it, expect, beforeEach } from 'vitest'; +import { UserRating } from '../../domain/value-objects/UserRating'; +import { RaceResultsData, RaceResultsProvider } from '../ports/RaceResultsProvider'; +import { AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; +import { RecordRaceRatingEventsUseCase } from './RecordRaceRatingEventsUseCase'; // Mock implementations class MockRaceResultsProvider implements RaceResultsProvider { diff --git a/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.ts b/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.ts index 1f5eab634..b18e744d4 100644 --- a/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.ts +++ b/core/identity/application/use-cases/RecordRaceRatingEventsUseCase.ts @@ -1,9 +1,9 @@ -import { RaceResultsProvider } from '../ports/RaceResultsProvider'; import { RatingEventRepository } from '../../domain/repositories/RatingEventRepository'; import { UserRatingRepository } from '../../domain/repositories/UserRatingRepository'; import { RatingEventFactory } from '../../domain/services/RatingEventFactory'; -import { AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; import { RecordRaceRatingEventsInput, RecordRaceRatingEventsOutput } from '../dtos/RecordRaceRatingEventsDto'; +import { RaceResultsProvider } from '../ports/RaceResultsProvider'; +import { AppendRatingEventsUseCase } from './AppendRatingEventsUseCase'; /** * Use Case: RecordRaceRatingEventsUseCase diff --git a/core/identity/application/use-cases/ResetPasswordUseCase.ts b/core/identity/application/use-cases/ResetPasswordUseCase.ts index 57931d1b3..c2fcf2829 100644 --- a/core/identity/application/use-cases/ResetPasswordUseCase.ts +++ b/core/identity/application/use-cases/ResetPasswordUseCase.ts @@ -1,12 +1,12 @@ +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { AuthRepository } from '../../domain/repositories/AuthRepository'; import { MagicLinkRepository } from '../../domain/repositories/MagicLinkRepository'; import { PasswordHashingService } from '../../domain/services/PasswordHashingService'; import { EmailAddress } from '../../domain/value-objects/EmailAddress'; import { PasswordHash } from '../../domain/value-objects/PasswordHash'; -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; export type ResetPasswordInput = { token: string; diff --git a/core/identity/application/use-cases/SignupSponsorUseCase.test.ts b/core/identity/application/use-cases/SignupSponsorUseCase.test.ts index 6f396a1da..ec95947fe 100644 --- a/core/identity/application/use-cases/SignupSponsorUseCase.test.ts +++ b/core/identity/application/use-cases/SignupSponsorUseCase.test.ts @@ -1,9 +1,9 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; -import { SignupSponsorUseCase } from './SignupSponsorUseCase'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { AuthRepository } from '../../domain/repositories/AuthRepository'; import type { CompanyRepository } from '../../domain/repositories/CompanyRepository'; import type { PasswordHashingService } from '../ports/PasswordHashingService'; +import { SignupSponsorUseCase } from './SignupSponsorUseCase'; describe('SignupSponsorUseCase', () => { let authRepo: { diff --git a/core/identity/application/use-cases/SignupSponsorUseCase.ts b/core/identity/application/use-cases/SignupSponsorUseCase.ts index 35a531ab9..b698e8acc 100644 --- a/core/identity/application/use-cases/SignupSponsorUseCase.ts +++ b/core/identity/application/use-cases/SignupSponsorUseCase.ts @@ -1,14 +1,14 @@ -import { EmailAddress } from '../../domain/value-objects/EmailAddress'; -import { UserId } from '../../domain/value-objects/UserId'; -import { User } from '../../domain/entities/User'; +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Company } from '../../domain/entities/Company'; +import { User } from '../../domain/entities/User'; import { AuthRepository } from '../../domain/repositories/AuthRepository'; import { CompanyRepository } from '../../domain/repositories/CompanyRepository'; import { PasswordHashingService } from '../../domain/services/PasswordHashingService'; -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; +import { EmailAddress } from '../../domain/value-objects/EmailAddress'; +import { UserId } from '../../domain/value-objects/UserId'; export type SignupSponsorInput = { email: string; diff --git a/core/identity/application/use-cases/SignupUseCase.test.ts b/core/identity/application/use-cases/SignupUseCase.test.ts index cabcd844c..bdc506fa8 100644 --- a/core/identity/application/use-cases/SignupUseCase.test.ts +++ b/core/identity/application/use-cases/SignupUseCase.test.ts @@ -1,11 +1,11 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { User } from '../../domain/entities/User'; +import type { AuthRepository } from '../../domain/repositories/AuthRepository'; import { PasswordHash } from '../../domain/value-objects/PasswordHash'; import { UserId } from '../../domain/value-objects/UserId'; -import { SignupUseCase } from './SignupUseCase'; -import type { AuthRepository } from '../../domain/repositories/AuthRepository'; import type { PasswordHashingService } from '../ports/PasswordHashingService'; +import { SignupUseCase } from './SignupUseCase'; describe('SignupUseCase', () => { let authRepo: { diff --git a/core/identity/application/use-cases/SignupUseCase.ts b/core/identity/application/use-cases/SignupUseCase.ts index 394abca49..3fdb3f287 100644 --- a/core/identity/application/use-cases/SignupUseCase.ts +++ b/core/identity/application/use-cases/SignupUseCase.ts @@ -1,13 +1,13 @@ -import { EmailAddress } from '../../domain/value-objects/EmailAddress'; -import { UserId } from '../../domain/value-objects/UserId'; +import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { User } from '../../domain/entities/User'; import { AuthRepository } from '../../domain/repositories/AuthRepository'; import { PasswordHashingService } from '../../domain/services/PasswordHashingService'; +import { EmailAddress } from '../../domain/value-objects/EmailAddress'; import { PasswordHash } from '../../domain/value-objects/PasswordHash'; -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; -import type { UseCase } from '@core/shared/application/UseCase'; +import { UserId } from '../../domain/value-objects/UserId'; export type SignupInput = { email: string; diff --git a/core/identity/application/use-cases/SignupWithEmailUseCase.test.ts b/core/identity/application/use-cases/SignupWithEmailUseCase.test.ts index 9ef057737..14de2cf20 100644 --- a/core/identity/application/use-cases/SignupWithEmailUseCase.test.ts +++ b/core/identity/application/use-cases/SignupWithEmailUseCase.test.ts @@ -1,8 +1,8 @@ import type { Logger } from '@core/shared/domain/Logger'; -import { describe, expect, it, vi, type Mock, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { UserRepository } from '../../domain/repositories/UserRepository'; import type { IdentitySessionPort } from '../ports/IdentitySessionPort'; import { SignupWithEmailUseCase } from './SignupWithEmailUseCase'; -import type { UserRepository } from '../../domain/repositories/UserRepository'; describe('SignupWithEmailUseCase', () => { let userRepository: { diff --git a/core/identity/application/use-cases/SignupWithEmailUseCase.ts b/core/identity/application/use-cases/SignupWithEmailUseCase.ts index 8c096e408..793c6b154 100644 --- a/core/identity/application/use-cases/SignupWithEmailUseCase.ts +++ b/core/identity/application/use-cases/SignupWithEmailUseCase.ts @@ -1,5 +1,5 @@ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { StoredUser, UserRepository } from '../../domain/repositories/UserRepository'; import type { AuthenticatedUser } from '../ports/IdentityProviderPort'; diff --git a/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.integration.test.ts b/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.integration.test.ts index a84f39f80..6eda65b79 100644 --- a/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.integration.test.ts +++ b/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.integration.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { UpsertExternalGameRatingUseCase } from './UpsertExternalGameRatingUseCase'; -import { UpsertExternalGameRatingInput } from '../dtos/UpsertExternalGameRatingDto'; +import { beforeEach, describe, expect, it } from 'vitest'; import { ExternalGameRatingProfile } from '../../domain/entities/ExternalGameRatingProfile'; import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; +import { UpsertExternalGameRatingInput } from '../dtos/UpsertExternalGameRatingDto'; +import { UpsertExternalGameRatingUseCase } from './UpsertExternalGameRatingUseCase'; // Mock repository for integration test class MockExternalGameRatingRepository { diff --git a/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.test.ts b/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.test.ts index 283029ae4..64dbc3f51 100644 --- a/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.test.ts +++ b/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.test.ts @@ -1,12 +1,12 @@ -import { UpsertExternalGameRatingUseCase } from './UpsertExternalGameRatingUseCase'; -import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { ExternalGameRatingProfile } from '../../domain/entities/ExternalGameRatingProfile'; -import { UserId } from '../../domain/value-objects/UserId'; -import { GameKey } from '../../domain/value-objects/GameKey'; +import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; import { ExternalRating } from '../../domain/value-objects/ExternalRating'; import { ExternalRatingProvenance } from '../../domain/value-objects/ExternalRatingProvenance'; +import { GameKey } from '../../domain/value-objects/GameKey'; +import { UserId } from '../../domain/value-objects/UserId'; import { UpsertExternalGameRatingInput } from '../dtos/UpsertExternalGameRatingDto'; -import { vi, describe, it, expect, beforeEach, type Mock } from 'vitest'; +import { UpsertExternalGameRatingUseCase } from './UpsertExternalGameRatingUseCase'; describe('UpsertExternalGameRatingUseCase', () => { let useCase: UpsertExternalGameRatingUseCase; diff --git a/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.ts b/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.ts index 9bdc5568e..fe9f10f6f 100644 --- a/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.ts +++ b/core/identity/application/use-cases/UpsertExternalGameRatingUseCase.ts @@ -1,9 +1,9 @@ -import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; import { ExternalGameRatingProfile } from '../../domain/entities/ExternalGameRatingProfile'; -import { UserId } from '../../domain/value-objects/UserId'; -import { GameKey } from '../../domain/value-objects/GameKey'; +import { ExternalGameRatingRepository } from '../../domain/repositories/ExternalGameRatingRepository'; import { ExternalRating } from '../../domain/value-objects/ExternalRating'; import { ExternalRatingProvenance } from '../../domain/value-objects/ExternalRatingProvenance'; +import { GameKey } from '../../domain/value-objects/GameKey'; +import { UserId } from '../../domain/value-objects/UserId'; import { UpsertExternalGameRatingInput, UpsertExternalGameRatingOutput } from '../dtos/UpsertExternalGameRatingDto'; /** diff --git a/core/identity/domain/entities/AdminVoteSession.test.ts b/core/identity/domain/entities/AdminVoteSession.test.ts index f917aff2f..adfeff5c1 100644 --- a/core/identity/domain/entities/AdminVoteSession.test.ts +++ b/core/identity/domain/entities/AdminVoteSession.test.ts @@ -1,5 +1,5 @@ +import { IdentityDomainInvariantError, IdentityDomainValidationError } from '../errors/IdentityDomainError'; import { AdminVoteSession } from './AdminVoteSession'; -import { IdentityDomainValidationError, IdentityDomainInvariantError } from '../errors/IdentityDomainError'; describe('AdminVoteSession', () => { const now = new Date('2025-01-01T00:00:00Z'); diff --git a/core/identity/domain/entities/ExternalGameRatingProfile.test.ts b/core/identity/domain/entities/ExternalGameRatingProfile.test.ts index e02439c36..a818a0785 100644 --- a/core/identity/domain/entities/ExternalGameRatingProfile.test.ts +++ b/core/identity/domain/entities/ExternalGameRatingProfile.test.ts @@ -1,9 +1,9 @@ -import { ExternalGameRatingProfile } from './ExternalGameRatingProfile'; -import { UserId } from '../value-objects/UserId'; -import { GameKey } from '../value-objects/GameKey'; +import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; import { ExternalRating } from '../value-objects/ExternalRating'; import { ExternalRatingProvenance } from '../value-objects/ExternalRatingProvenance'; -import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { GameKey } from '../value-objects/GameKey'; +import { UserId } from '../value-objects/UserId'; +import { ExternalGameRatingProfile } from './ExternalGameRatingProfile'; describe('ExternalGameRatingProfile', () => { let userId: UserId; diff --git a/core/identity/domain/entities/ExternalGameRatingProfile.ts b/core/identity/domain/entities/ExternalGameRatingProfile.ts index b1ab8a1ca..6e110f2ca 100644 --- a/core/identity/domain/entities/ExternalGameRatingProfile.ts +++ b/core/identity/domain/entities/ExternalGameRatingProfile.ts @@ -1,9 +1,9 @@ import { Entity } from '@core/shared/domain/Entity'; -import { UserId } from '../value-objects/UserId'; -import { GameKey } from '../value-objects/GameKey'; +import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; import { ExternalRating } from '../value-objects/ExternalRating'; import { ExternalRatingProvenance } from '../value-objects/ExternalRatingProvenance'; -import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { GameKey } from '../value-objects/GameKey'; +import { UserId } from '../value-objects/UserId'; export interface ExternalGameRatingProfileProps { userId: UserId; diff --git a/core/identity/domain/entities/RatingEvent.test.ts b/core/identity/domain/entities/RatingEvent.test.ts index eb362dda9..be1a2cd42 100644 --- a/core/identity/domain/entities/RatingEvent.test.ts +++ b/core/identity/domain/entities/RatingEvent.test.ts @@ -1,8 +1,8 @@ -import { RatingEvent } from './RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { IdentityDomainInvariantError, IdentityDomainValidationError } from '../errors/IdentityDomainError'; import { RatingDelta } from '../value-objects/RatingDelta'; -import { IdentityDomainValidationError, IdentityDomainInvariantError } from '../errors/IdentityDomainError'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; +import { RatingEvent } from './RatingEvent'; describe('RatingEvent', () => { const validProps = { diff --git a/core/identity/domain/entities/SponsorAccount.test.ts b/core/identity/domain/entities/SponsorAccount.test.ts index 8775fda90..cd482bcc0 100644 --- a/core/identity/domain/entities/SponsorAccount.test.ts +++ b/core/identity/domain/entities/SponsorAccount.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/entities/SponsorAccount'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/entities/SponsorAccount.ts', () => { it('imports', () => { diff --git a/core/identity/domain/entities/SponsorAccount.ts b/core/identity/domain/entities/SponsorAccount.ts index bf77f6e38..7418e513a 100644 --- a/core/identity/domain/entities/SponsorAccount.ts +++ b/core/identity/domain/entities/SponsorAccount.ts @@ -5,9 +5,9 @@ * Separate from the racing domain's Sponsor entity which holds business data. */ -import { UserId } from '../value-objects/UserId'; import type { EmailValidationResult } from '../types/EmailAddress'; import { validateEmail } from '../types/EmailAddress'; +import { UserId } from '../value-objects/UserId'; export interface SponsorAccountProps { id: UserId; diff --git a/core/identity/domain/entities/User.test.ts b/core/identity/domain/entities/User.test.ts index 94ef189f8..f61a4ad22 100644 --- a/core/identity/domain/entities/User.test.ts +++ b/core/identity/domain/entities/User.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/entities/User'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/entities/User.ts', () => { it('imports', () => { diff --git a/core/identity/domain/entities/User.ts b/core/identity/domain/entities/User.ts index 111a12d9a..0b35a9ff6 100644 --- a/core/identity/domain/entities/User.ts +++ b/core/identity/domain/entities/User.ts @@ -1,8 +1,8 @@ +import { StoredUser } from '../repositories/UserRepository'; import type { EmailValidationResult } from '../types/EmailAddress'; import { validateEmail } from '../types/EmailAddress'; -import { UserId } from '../value-objects/UserId'; import { PasswordHash } from '../value-objects/PasswordHash'; -import { StoredUser } from '../repositories/UserRepository'; +import { UserId } from '../value-objects/UserId'; export interface UserProps { id: UserId; diff --git a/core/identity/domain/entities/UserAchievement.test.ts b/core/identity/domain/entities/UserAchievement.test.ts index 7777171e0..9dbb76840 100644 --- a/core/identity/domain/entities/UserAchievement.test.ts +++ b/core/identity/domain/entities/UserAchievement.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/entities/UserAchievement'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/entities/UserAchievement.ts', () => { it('imports', () => { diff --git a/core/identity/domain/errors/IdentityDomainError.ts b/core/identity/domain/errors/IdentityDomainError.ts index c43b29546..b35267c28 100644 --- a/core/identity/domain/errors/IdentityDomainError.ts +++ b/core/identity/domain/errors/IdentityDomainError.ts @@ -1,4 +1,4 @@ -import type { DomainError, CommonDomainErrorKind } from '@core/shared/errors/DomainError'; +import type { CommonDomainErrorKind, DomainError } from '@core/shared/errors/DomainError'; export abstract class IdentityDomainError extends Error implements DomainError { readonly type = 'domain' as const; diff --git a/core/identity/domain/repositories/AuthRepository.ts b/core/identity/domain/repositories/AuthRepository.ts index 5fe413484..6ec0116bf 100644 --- a/core/identity/domain/repositories/AuthRepository.ts +++ b/core/identity/domain/repositories/AuthRepository.ts @@ -1,5 +1,5 @@ -import { EmailAddress } from '../value-objects/EmailAddress'; import { User } from '../entities/User'; +import { EmailAddress } from '../value-objects/EmailAddress'; /** * Domain Repository: AuthRepository diff --git a/core/identity/domain/repositories/ExternalGameRatingRepository.test.ts b/core/identity/domain/repositories/ExternalGameRatingRepository.test.ts index 8c4494cc3..96c4bf21b 100644 --- a/core/identity/domain/repositories/ExternalGameRatingRepository.test.ts +++ b/core/identity/domain/repositories/ExternalGameRatingRepository.test.ts @@ -1,10 +1,10 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { ExternalGameRatingRepository } from './ExternalGameRatingRepository'; +import { beforeEach, describe, expect, it } from 'vitest'; import { ExternalGameRatingProfile } from '../entities/ExternalGameRatingProfile'; -import { UserId } from '../value-objects/UserId'; -import { GameKey } from '../value-objects/GameKey'; import { ExternalRating } from '../value-objects/ExternalRating'; import { ExternalRatingProvenance } from '../value-objects/ExternalRatingProvenance'; +import { GameKey } from '../value-objects/GameKey'; +import { UserId } from '../value-objects/UserId'; +import { ExternalGameRatingRepository } from './ExternalGameRatingRepository'; /** * Test suite for ExternalGameRatingRepository interface diff --git a/core/identity/domain/repositories/RatingEventRepository.test.ts b/core/identity/domain/repositories/RatingEventRepository.test.ts index 21afa89ab..bc34fff78 100644 --- a/core/identity/domain/repositories/RatingEventRepository.test.ts +++ b/core/identity/domain/repositories/RatingEventRepository.test.ts @@ -3,10 +3,10 @@ */ import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; import { RatingDelta } from '../value-objects/RatingDelta'; -import { RatingEventRepository, FindByUserIdOptions, PaginatedQueryOptions, PaginatedResult } from './RatingEventRepository'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; +import { FindByUserIdOptions, PaginatedQueryOptions, PaginatedResult, RatingEventRepository } from './RatingEventRepository'; // In-memory test implementation class InMemoryRatingEventRepository implements RatingEventRepository { diff --git a/core/identity/domain/services/AdminTrustRatingCalculator.test.ts b/core/identity/domain/services/AdminTrustRatingCalculator.test.ts index 5a94a08be..9c3492468 100644 --- a/core/identity/domain/services/AdminTrustRatingCalculator.test.ts +++ b/core/identity/domain/services/AdminTrustRatingCalculator.test.ts @@ -1,8 +1,8 @@ -import { AdminTrustRatingCalculator, VoteOutcomeInput, SystemSignalInput } from './AdminTrustRatingCalculator'; import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; import { RatingDelta } from '../value-objects/RatingDelta'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; +import { AdminTrustRatingCalculator, SystemSignalInput, VoteOutcomeInput } from './AdminTrustRatingCalculator'; describe('AdminTrustRatingCalculator', () => { describe('calculate', () => { diff --git a/core/identity/domain/services/AdminTrustRatingCalculator.ts b/core/identity/domain/services/AdminTrustRatingCalculator.ts index 7bc969337..c507079d7 100644 --- a/core/identity/domain/services/AdminTrustRatingCalculator.ts +++ b/core/identity/domain/services/AdminTrustRatingCalculator.ts @@ -1,5 +1,5 @@ -import { RatingEvent } from '../entities/RatingEvent'; import { AdminVoteOutcome } from '../entities/AdminVoteSession'; +import { RatingEvent } from '../entities/RatingEvent'; import { RatingDelta } from '../value-objects/RatingDelta'; /** diff --git a/core/identity/domain/services/DrivingRatingCalculator.test.ts b/core/identity/domain/services/DrivingRatingCalculator.test.ts index f68199750..533677c1c 100644 --- a/core/identity/domain/services/DrivingRatingCalculator.test.ts +++ b/core/identity/domain/services/DrivingRatingCalculator.test.ts @@ -1,8 +1,8 @@ -import { DrivingRatingCalculator, DrivingRaceFactsDto } from './DrivingRatingCalculator'; import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; import { RatingDelta } from '../value-objects/RatingDelta'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; +import { DrivingRaceFactsDto, DrivingRatingCalculator } from './DrivingRatingCalculator'; describe('DrivingRatingCalculator', () => { describe('calculateFromRaceFacts', () => { diff --git a/core/identity/domain/services/DrivingRatingCalculator.ts b/core/identity/domain/services/DrivingRatingCalculator.ts index b9792b55c..0d6c62613 100644 --- a/core/identity/domain/services/DrivingRatingCalculator.ts +++ b/core/identity/domain/services/DrivingRatingCalculator.ts @@ -56,7 +56,6 @@ export class DrivingRatingCalculator { // Incident penalty per incident private static readonly INCIDENT_PENALTY = -5; - private static readonly MAJOR_INCIDENT_PENALTY = -15; /** * Calculate driving rating deltas from race facts diff --git a/core/identity/domain/services/EligibilityEvaluator.test.ts b/core/identity/domain/services/EligibilityEvaluator.test.ts index 38b684a72..4fda5d18f 100644 --- a/core/identity/domain/services/EligibilityEvaluator.test.ts +++ b/core/identity/domain/services/EligibilityEvaluator.test.ts @@ -2,8 +2,8 @@ * Tests for EligibilityEvaluator */ -import { EligibilityEvaluator, RatingData } from './EligibilityEvaluator'; import { EligibilityFilterDto } from '../types/Eligibility'; +import { EligibilityEvaluator, RatingData } from './EligibilityEvaluator'; describe('EligibilityEvaluator', () => { let evaluator: EligibilityEvaluator; diff --git a/core/identity/domain/services/EligibilityEvaluator.ts b/core/identity/domain/services/EligibilityEvaluator.ts index 48ac6c3c6..ff47c0fe4 100644 --- a/core/identity/domain/services/EligibilityEvaluator.ts +++ b/core/identity/domain/services/EligibilityEvaluator.ts @@ -6,12 +6,12 @@ * Provides explainable results with detailed reasons. */ -import { - EvaluationResultDto, - EvaluationReason, - EligibilityFilterDto, - ParsedEligibilityFilter, - EligibilityCondition +import { + EligibilityCondition, + EligibilityFilterDto, + EvaluationReason, + EvaluationResultDto, + ParsedEligibilityFilter } from '../types/Eligibility'; export interface RatingData { diff --git a/core/identity/domain/services/RatingEventFactory.test.ts b/core/identity/domain/services/RatingEventFactory.test.ts index bdd264857..158c55037 100644 --- a/core/identity/domain/services/RatingEventFactory.test.ts +++ b/core/identity/domain/services/RatingEventFactory.test.ts @@ -1,4 +1,4 @@ -import { RatingEventFactory, RaceFactsDto } from './RatingEventFactory'; +import { RaceFactsDto, RatingEventFactory } from './RatingEventFactory'; describe('RatingEventFactory', () => { describe('createFromRaceFinish', () => { diff --git a/core/identity/domain/services/RatingEventFactory.ts b/core/identity/domain/services/RatingEventFactory.ts index ff78d61ed..504cd29bf 100644 --- a/core/identity/domain/services/RatingEventFactory.ts +++ b/core/identity/domain/services/RatingEventFactory.ts @@ -1,9 +1,9 @@ import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; -import { RatingDelta } from '../value-objects/RatingDelta'; -import { DrivingReasonCode } from '../value-objects/DrivingReasonCode'; import { AdminTrustReasonCode } from '../value-objects/AdminTrustReasonCode'; +import { DrivingReasonCode } from '../value-objects/DrivingReasonCode'; +import { RatingDelta } from '../value-objects/RatingDelta'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; // Existing interfaces interface RaceFinishInput { diff --git a/core/identity/domain/services/RatingSnapshotCalculator.test.ts b/core/identity/domain/services/RatingSnapshotCalculator.test.ts index 62285ecb5..913cf59b8 100644 --- a/core/identity/domain/services/RatingSnapshotCalculator.test.ts +++ b/core/identity/domain/services/RatingSnapshotCalculator.test.ts @@ -1,8 +1,8 @@ -import { RatingSnapshotCalculator } from './RatingSnapshotCalculator'; import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; import { RatingDelta } from '../value-objects/RatingDelta'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; +import { RatingSnapshotCalculator } from './RatingSnapshotCalculator'; describe('RatingSnapshotCalculator', () => { describe('calculate', () => { diff --git a/core/identity/domain/services/RatingSnapshotCalculator.ts b/core/identity/domain/services/RatingSnapshotCalculator.ts index dc76f391e..80a646207 100644 --- a/core/identity/domain/services/RatingSnapshotCalculator.ts +++ b/core/identity/domain/services/RatingSnapshotCalculator.ts @@ -1,5 +1,5 @@ -import { UserRating } from '../value-objects/UserRating'; import { RatingEvent } from '../entities/RatingEvent'; +import { UserRating } from '../value-objects/UserRating'; /** * Domain Service: RatingSnapshotCalculator diff --git a/core/identity/domain/services/RatingUpdateService.test.ts b/core/identity/domain/services/RatingUpdateService.test.ts index bba3c7406..00e7dab1f 100644 --- a/core/identity/domain/services/RatingUpdateService.test.ts +++ b/core/identity/domain/services/RatingUpdateService.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { RatingUpdateService } from './RatingUpdateService'; -import type { UserRatingRepository } from '../repositories/UserRatingRepository'; -import type { RatingEventRepository } from '../repositories/RatingEventRepository'; -import { UserRating } from '../value-objects/UserRating'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import type { RatingEventRepository } from '../repositories/RatingEventRepository'; +import type { UserRatingRepository } from '../repositories/UserRatingRepository'; import { RatingDelta } from '../value-objects/RatingDelta'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; +import { UserRating } from '../value-objects/UserRating'; +import { RatingUpdateService } from './RatingUpdateService'; describe('RatingUpdateService - Slice 7 Evolution', () => { let service: RatingUpdateService; diff --git a/core/identity/domain/services/RatingUpdateService.ts b/core/identity/domain/services/RatingUpdateService.ts index 3d4037db4..6f457d066 100644 --- a/core/identity/domain/services/RatingUpdateService.ts +++ b/core/identity/domain/services/RatingUpdateService.ts @@ -1,12 +1,12 @@ import type { DomainService } from '@core/shared/domain/Service'; -import type { UserRatingRepository } from '../repositories/UserRatingRepository'; +import { RatingEvent } from '../entities/RatingEvent'; import type { RatingEventRepository } from '../repositories/RatingEventRepository'; +import type { UserRatingRepository } from '../repositories/UserRatingRepository'; +import { RatingDelta } from '../value-objects/RatingDelta'; +import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; +import { RatingEventId } from '../value-objects/RatingEventId'; import { RatingEventFactory } from './RatingEventFactory'; import { RatingSnapshotCalculator } from './RatingSnapshotCalculator'; -import { RatingEvent } from '../entities/RatingEvent'; -import { RatingEventId } from '../value-objects/RatingEventId'; -import { RatingDimensionKey } from '../value-objects/RatingDimensionKey'; -import { RatingDelta } from '../value-objects/RatingDelta'; /** * Domain Service: RatingUpdateService @@ -112,20 +112,6 @@ export class RatingUpdateService implements DomainService { } } - /** - * Update individual driver rating based on race result (LEGACY - DEPRECATED) - * Kept for backward compatibility but now uses event-based approach - */ - private async updateDriverRating(result: { - driverId: string; - position: number; - totalDrivers: number; - incidents: number; - startPosition: number; - }): Promise { - // Delegate to new event-based approach - await this.updateDriverRatingsAfterRace([result]); - } /** * Update trust score based on sportsmanship actions (USES LEDGER) @@ -193,34 +179,5 @@ export class RatingUpdateService implements DomainService { await this.userRatingRepository.save(snapshot); } - /** - * Calculate performance score based on finishing position and field strength - * (Utility method kept for reference, but now handled by RatingEventFactory) - */ - private calculatePerformanceScore( - position: number, - totalDrivers: number, - startPosition: number - ): number { - const positionScore = ((totalDrivers - position + 1) / totalDrivers) * 100; - const positionsGained = startPosition - position; - const gainBonus = Math.max(0, positionsGained * 2); - const fieldStrengthMultiplier = 0.8 + (totalDrivers / 50); - const rawScore = (positionScore + gainBonus) * fieldStrengthMultiplier; - return Math.max(0, Math.min(100, rawScore)); - } - /** - * Calculate fairness score based on incident involvement - * (Utility method kept for reference, but now handled by RatingEventFactory) - */ - private calculateFairnessScore(incidents: number, totalDrivers: number): number { - let fairnessScore = 100; - fairnessScore -= incidents * 15; - const incidentRate = incidents / totalDrivers; - if (incidentRate > 0.5) { - fairnessScore -= 20; - } - return Math.max(0, Math.min(100, fairnessScore)); - } } \ No newline at end of file diff --git a/core/identity/domain/value-objects/AdminTrustReasonCode.test.ts b/core/identity/domain/value-objects/AdminTrustReasonCode.test.ts index 34b6f21f3..8205321ee 100644 --- a/core/identity/domain/value-objects/AdminTrustReasonCode.test.ts +++ b/core/identity/domain/value-objects/AdminTrustReasonCode.test.ts @@ -1,6 +1,6 @@ -import { AdminTrustReasonCode, type AdminTrustReasonCodeValue } from './AdminTrustReasonCode'; +import { describe, expect, it } from 'vitest'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; -import { describe, it, expect } from 'vitest'; +import { AdminTrustReasonCode, type AdminTrustReasonCodeValue } from './AdminTrustReasonCode'; describe('AdminTrustReasonCode', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/DrivingReasonCode.test.ts b/core/identity/domain/value-objects/DrivingReasonCode.test.ts index da15ab909..d687a54dd 100644 --- a/core/identity/domain/value-objects/DrivingReasonCode.test.ts +++ b/core/identity/domain/value-objects/DrivingReasonCode.test.ts @@ -1,6 +1,6 @@ -import { DrivingReasonCode, type DrivingReasonCodeValue } from './DrivingReasonCode'; +import { describe, expect, it } from 'vitest'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; -import { describe, it, expect } from 'vitest'; +import { DrivingReasonCode, type DrivingReasonCodeValue } from './DrivingReasonCode'; describe('DrivingReasonCode', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/EmailAddress.test.ts b/core/identity/domain/value-objects/EmailAddress.test.ts index 3363bdb9f..3553fbbf3 100644 --- a/core/identity/domain/value-objects/EmailAddress.test.ts +++ b/core/identity/domain/value-objects/EmailAddress.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/value-objects/EmailAddress'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/value-objects/EmailAddress.ts', () => { it('imports', () => { diff --git a/core/identity/domain/value-objects/EmailAddress.ts b/core/identity/domain/value-objects/EmailAddress.ts index 700f587d0..4602ae34c 100644 --- a/core/identity/domain/value-objects/EmailAddress.ts +++ b/core/identity/domain/value-objects/EmailAddress.ts @@ -1,6 +1,6 @@ import type { ValueObject } from '@core/shared/domain/ValueObject'; import type { EmailValidationResult } from '../types/EmailAddress'; -import { validateEmail, isDisposableEmail } from '../types/EmailAddress'; +import { isDisposableEmail, validateEmail } from '../types/EmailAddress'; export interface EmailAddressProps { value: string; @@ -44,5 +44,6 @@ export class EmailAddress implements ValueObject { } } +export { isDisposableEmail, validateEmail } from '../types/EmailAddress'; export type { EmailValidationResult } from '../types/EmailAddress'; -export { validateEmail, isDisposableEmail } from '../types/EmailAddress'; \ No newline at end of file + diff --git a/core/identity/domain/value-objects/ExternalRating.test.ts b/core/identity/domain/value-objects/ExternalRating.test.ts index 45e2064fd..d9be41cd6 100644 --- a/core/identity/domain/value-objects/ExternalRating.test.ts +++ b/core/identity/domain/value-objects/ExternalRating.test.ts @@ -1,6 +1,6 @@ +import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; import { ExternalRating } from './ExternalRating'; import { GameKey } from './GameKey'; -import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; describe('ExternalRating', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/ExternalRatingProvenance.test.ts b/core/identity/domain/value-objects/ExternalRatingProvenance.test.ts index 63582db06..199958dc8 100644 --- a/core/identity/domain/value-objects/ExternalRatingProvenance.test.ts +++ b/core/identity/domain/value-objects/ExternalRatingProvenance.test.ts @@ -1,5 +1,5 @@ -import { ExternalRatingProvenance } from './ExternalRatingProvenance'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { ExternalRatingProvenance } from './ExternalRatingProvenance'; describe('ExternalRatingProvenance', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/GameKey.test.ts b/core/identity/domain/value-objects/GameKey.test.ts index ccf40bd44..92928696c 100644 --- a/core/identity/domain/value-objects/GameKey.test.ts +++ b/core/identity/domain/value-objects/GameKey.test.ts @@ -1,5 +1,5 @@ -import { GameKey } from './GameKey'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { GameKey } from './GameKey'; describe('GameKey', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/PasswordHash.test.ts b/core/identity/domain/value-objects/PasswordHash.test.ts index cc2d49b80..418676d57 100644 --- a/core/identity/domain/value-objects/PasswordHash.test.ts +++ b/core/identity/domain/value-objects/PasswordHash.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/value-objects/PasswordHash'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/value-objects/PasswordHash.ts', () => { it('imports', () => { diff --git a/core/identity/domain/value-objects/PasswordHash.ts b/core/identity/domain/value-objects/PasswordHash.ts index 25d89508b..88dc1524f 100644 --- a/core/identity/domain/value-objects/PasswordHash.ts +++ b/core/identity/domain/value-objects/PasswordHash.ts @@ -1,5 +1,5 @@ -import bcrypt from 'bcrypt'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import bcrypt from 'bcrypt'; export interface PasswordHashProps { value: string; diff --git a/core/identity/domain/value-objects/RatingDelta.test.ts b/core/identity/domain/value-objects/RatingDelta.test.ts index b9ac947ff..c24514999 100644 --- a/core/identity/domain/value-objects/RatingDelta.test.ts +++ b/core/identity/domain/value-objects/RatingDelta.test.ts @@ -1,5 +1,5 @@ -import { RatingDelta } from './RatingDelta'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { RatingDelta } from './RatingDelta'; describe('RatingDelta', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/RatingDimensionKey.test.ts b/core/identity/domain/value-objects/RatingDimensionKey.test.ts index 548974dba..fc34fa614 100644 --- a/core/identity/domain/value-objects/RatingDimensionKey.test.ts +++ b/core/identity/domain/value-objects/RatingDimensionKey.test.ts @@ -1,5 +1,5 @@ -import { RatingDimensionKey } from './RatingDimensionKey'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { RatingDimensionKey } from './RatingDimensionKey'; describe('RatingDimensionKey', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/RatingEventId.test.ts b/core/identity/domain/value-objects/RatingEventId.test.ts index 8a6b9cc51..b5b8e7a4f 100644 --- a/core/identity/domain/value-objects/RatingEventId.test.ts +++ b/core/identity/domain/value-objects/RatingEventId.test.ts @@ -1,5 +1,5 @@ -import { RatingEventId } from './RatingEventId'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { RatingEventId } from './RatingEventId'; describe('RatingEventId', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/RatingEventId.ts b/core/identity/domain/value-objects/RatingEventId.ts index fce65c2ae..962f09a74 100644 --- a/core/identity/domain/value-objects/RatingEventId.ts +++ b/core/identity/domain/value-objects/RatingEventId.ts @@ -1,6 +1,6 @@ import type { ValueObject } from '@core/shared/domain/ValueObject'; -import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; import { v4 as uuidv4 } from 'uuid'; +import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; export interface RatingEventIdProps { value: string; diff --git a/core/identity/domain/value-objects/RatingReference.test.ts b/core/identity/domain/value-objects/RatingReference.test.ts index fe6965307..e5d618e01 100644 --- a/core/identity/domain/value-objects/RatingReference.test.ts +++ b/core/identity/domain/value-objects/RatingReference.test.ts @@ -1,5 +1,5 @@ -import { RatingReference } from './RatingReference'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { RatingReference } from './RatingReference'; describe('RatingReference', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/RatingValue.test.ts b/core/identity/domain/value-objects/RatingValue.test.ts index 069f8ee47..1090e17c5 100644 --- a/core/identity/domain/value-objects/RatingValue.test.ts +++ b/core/identity/domain/value-objects/RatingValue.test.ts @@ -1,5 +1,5 @@ -import { RatingValue } from './RatingValue'; import { IdentityDomainValidationError } from '../errors/IdentityDomainError'; +import { RatingValue } from './RatingValue'; describe('RatingValue', () => { describe('create', () => { diff --git a/core/identity/domain/value-objects/UserId.test.ts b/core/identity/domain/value-objects/UserId.test.ts index 73f7b44b4..7d603f8e0 100644 --- a/core/identity/domain/value-objects/UserId.test.ts +++ b/core/identity/domain/value-objects/UserId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/value-objects/UserId'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/value-objects/UserId.ts', () => { it('imports', () => { diff --git a/core/identity/domain/value-objects/UserId.ts b/core/identity/domain/value-objects/UserId.ts index 0277bc33e..1cc773b6f 100644 --- a/core/identity/domain/value-objects/UserId.ts +++ b/core/identity/domain/value-objects/UserId.ts @@ -1,5 +1,5 @@ -import { v4 as uuidv4 } from 'uuid'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { v4 as uuidv4 } from 'uuid'; export interface UserIdProps { value: string; diff --git a/core/identity/domain/value-objects/UserRating.test.ts b/core/identity/domain/value-objects/UserRating.test.ts index bc92cbcef..dfc113401 100644 --- a/core/identity/domain/value-objects/UserRating.test.ts +++ b/core/identity/domain/value-objects/UserRating.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/identity/domain/value-objects/UserRating'; +import { describe, expect, it } from 'vitest'; describe('identity/domain/value-objects/UserRating.ts', () => { it('imports', () => { diff --git a/core/media/application/ports/AvatarGenerationPort.ts b/core/media/application/ports/AvatarGenerationPort.ts index fa5b73818..2ca7d7add 100644 --- a/core/media/application/ports/AvatarGenerationPort.ts +++ b/core/media/application/ports/AvatarGenerationPort.ts @@ -4,7 +4,7 @@ * Defines the contract for AI-powered avatar generation. */ -import type { RacingSuitColor, AvatarStyle } from '../../domain/types/AvatarGenerationRequest'; +import type { AvatarStyle, RacingSuitColor } from '../../domain/types/AvatarGenerationRequest'; export interface AvatarGenerationOptions { facePhotoUrl: string; diff --git a/core/media/application/use-cases/DeleteMediaUseCase.ts b/core/media/application/use-cases/DeleteMediaUseCase.ts index bb6519227..c34f8ddda 100644 --- a/core/media/application/use-cases/DeleteMediaUseCase.ts +++ b/core/media/application/use-cases/DeleteMediaUseCase.ts @@ -4,11 +4,11 @@ * Handles the business logic for deleting media files. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { MediaStoragePort } from '../ports/MediaStoragePort'; import { MediaRepository } from '../../domain/repositories/MediaRepository'; +import type { MediaStoragePort } from '../ports/MediaStoragePort'; export interface DeleteMediaInput { mediaId: string; diff --git a/core/media/application/use-cases/GetAvatarUseCase.ts b/core/media/application/use-cases/GetAvatarUseCase.ts index 4a6538338..a8acaa9f7 100644 --- a/core/media/application/use-cases/GetAvatarUseCase.ts +++ b/core/media/application/use-cases/GetAvatarUseCase.ts @@ -4,8 +4,8 @@ * Handles the business logic for retrieving a driver's avatar. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { AvatarRepository } from '../../domain/repositories/AvatarRepository'; diff --git a/core/media/application/use-cases/GetMediaUseCase.ts b/core/media/application/use-cases/GetMediaUseCase.ts index 58a5be6c1..f7e48603c 100644 --- a/core/media/application/use-cases/GetMediaUseCase.ts +++ b/core/media/application/use-cases/GetMediaUseCase.ts @@ -4,8 +4,8 @@ * Handles the business logic for retrieving media information. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { MediaRepository } from '../../domain/repositories/MediaRepository'; diff --git a/core/media/application/use-cases/RequestAvatarGenerationUseCase.ts b/core/media/application/use-cases/RequestAvatarGenerationUseCase.ts index 430fbe127..7826b4c14 100644 --- a/core/media/application/use-cases/RequestAvatarGenerationUseCase.ts +++ b/core/media/application/use-cases/RequestAvatarGenerationUseCase.ts @@ -4,15 +4,15 @@ * Handles the business logic for requesting avatar generation from a face photo. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuidv4 } from 'uuid'; import { AvatarGenerationRequest } from '../../domain/entities/AvatarGenerationRequest'; +import { AvatarGenerationRepository } from '../../domain/repositories/AvatarGenerationRepository'; import type { RacingSuitColor } from '../../domain/types/AvatarGenerationRequest'; import type { AvatarGenerationPort } from '../ports/AvatarGenerationPort'; import type { FaceValidationPort } from '../ports/FaceValidationPort'; -import { AvatarGenerationRepository } from '../../domain/repositories/AvatarGenerationRepository'; export interface RequestAvatarGenerationInput { userId: string; diff --git a/core/media/application/use-cases/ResolveMediaReferenceUseCase.ts b/core/media/application/use-cases/ResolveMediaReferenceUseCase.ts index f104ec573..c2481550d 100644 --- a/core/media/application/use-cases/ResolveMediaReferenceUseCase.ts +++ b/core/media/application/use-cases/ResolveMediaReferenceUseCase.ts @@ -1,6 +1,6 @@ -import { Result } from '@core/shared/domain/Result'; import type { MediaReference } from '@core/domain/media/MediaReference'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; +import { Result } from '@core/shared/domain/Result'; export type ResolveMediaReferenceInput = { reference: MediaReference; diff --git a/core/media/application/use-cases/SelectAvatarUseCase.ts b/core/media/application/use-cases/SelectAvatarUseCase.ts index b373fe980..85e49ea8c 100644 --- a/core/media/application/use-cases/SelectAvatarUseCase.ts +++ b/core/media/application/use-cases/SelectAvatarUseCase.ts @@ -4,8 +4,8 @@ * Handles the business logic for selecting a generated avatar from the options. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { AvatarGenerationRepository } from '../../domain/repositories/AvatarGenerationRepository'; diff --git a/core/media/application/use-cases/UpdateAvatarUseCase.ts b/core/media/application/use-cases/UpdateAvatarUseCase.ts index 330f3607d..1d01e2cb7 100644 --- a/core/media/application/use-cases/UpdateAvatarUseCase.ts +++ b/core/media/application/use-cases/UpdateAvatarUseCase.ts @@ -4,13 +4,13 @@ * Handles the business logic for updating a driver's avatar. */ -import { AvatarId } from '../../domain/value-objects/AvatarId'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuidv4 } from 'uuid'; import { Avatar } from '../../domain/entities/Avatar'; import { AvatarRepository } from '../../domain/repositories/AvatarRepository'; +import { AvatarId } from '../../domain/value-objects/AvatarId'; export interface UpdateAvatarInput { driverId: string; diff --git a/core/media/application/use-cases/UploadMediaUseCase.ts b/core/media/application/use-cases/UploadMediaUseCase.ts index cc474a445..13b37152f 100644 --- a/core/media/application/use-cases/UploadMediaUseCase.ts +++ b/core/media/application/use-cases/UploadMediaUseCase.ts @@ -4,13 +4,13 @@ * Handles the business logic for uploading media files. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuidv4 } from 'uuid'; import { Media } from '../../domain/entities/Media'; -import type { MediaStoragePort } from '../ports/MediaStoragePort'; import { MediaRepository } from '../../domain/repositories/MediaRepository'; +import type { MediaStoragePort } from '../ports/MediaStoragePort'; // Define Multer file type locally since @types/multer is not available export interface MulterFile { diff --git a/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.test.ts b/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.test.ts index c93874cd2..05a4b9de4 100644 --- a/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.test.ts +++ b/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.test.ts @@ -1,8 +1,9 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { describe, expect, it, vi, type Mock } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Notification } from '../../domain/entities/Notification'; +import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; import { GetUnreadNotificationsUseCase, type GetUnreadNotificationsInput, diff --git a/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.ts b/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.ts index 56d010340..6ed4fd507 100644 --- a/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.ts +++ b/core/notifications/application/use-cases/GetUnreadNotificationsUseCase.ts @@ -4,11 +4,11 @@ * Retrieves unread notifications for a recipient. */ -import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Notification } from '../../domain/entities/Notification'; +import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; export interface GetUnreadNotificationsInput { recipientId: string; diff --git a/core/notifications/application/use-cases/MarkNotificationReadUseCase.test.ts b/core/notifications/application/use-cases/MarkNotificationReadUseCase.test.ts index 1444bf177..a1b81d085 100644 --- a/core/notifications/application/use-cases/MarkNotificationReadUseCase.test.ts +++ b/core/notifications/application/use-cases/MarkNotificationReadUseCase.test.ts @@ -1,8 +1,9 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { describe, expect, it, vi, type Mock } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Notification } from '../../domain/entities/Notification'; +import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; import { DismissNotificationUseCase, MarkAllNotificationsReadUseCase, diff --git a/core/notifications/application/use-cases/MarkNotificationReadUseCase.ts b/core/notifications/application/use-cases/MarkNotificationReadUseCase.ts index 58d8f687c..919b06ad5 100644 --- a/core/notifications/application/use-cases/MarkNotificationReadUseCase.ts +++ b/core/notifications/application/use-cases/MarkNotificationReadUseCase.ts @@ -4,10 +4,10 @@ * Marks a notification as read. */ -import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; export interface MarkNotificationReadCommand { notificationId: string; diff --git a/core/notifications/application/use-cases/NotificationPreferencesUseCases.test.ts b/core/notifications/application/use-cases/NotificationPreferencesUseCases.test.ts index 05899bb11..cbb0c9eb1 100644 --- a/core/notifications/application/use-cases/NotificationPreferencesUseCases.test.ts +++ b/core/notifications/application/use-cases/NotificationPreferencesUseCases.test.ts @@ -3,6 +3,7 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { ChannelPreference, NotificationPreference, TypePreference } from '../../domain/entities/NotificationPreference'; +import { NotificationPreferenceRepository } from '../../domain/repositories/NotificationPreferenceRepository'; import type { NotificationChannel, NotificationType } from '../../domain/types/NotificationTypes'; import { GetNotificationPreferencesQuery, diff --git a/core/notifications/application/use-cases/NotificationPreferencesUseCases.ts b/core/notifications/application/use-cases/NotificationPreferencesUseCases.ts index ddf0900e3..d4e9df1eb 100644 --- a/core/notifications/application/use-cases/NotificationPreferencesUseCases.ts +++ b/core/notifications/application/use-cases/NotificationPreferencesUseCases.ts @@ -4,13 +4,13 @@ * Manages user notification preferences. */ -import { NotificationPreferenceRepository } from '../../domain/repositories/NotificationPreferenceRepository'; -import { NotificationChannel, NotificationType } from '../../domain/types/NotificationTypes'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { ChannelPreference, TypePreference } from '../../domain/entities/NotificationPreference'; import { NotificationPreference } from '../../domain/entities/NotificationPreference'; +import { NotificationPreferenceRepository } from '../../domain/repositories/NotificationPreferenceRepository'; +import { NotificationChannel, NotificationType } from '../../domain/types/NotificationTypes'; /** * Query: GetNotificationPreferencesQuery diff --git a/core/notifications/application/use-cases/SendNotificationUseCase.test.ts b/core/notifications/application/use-cases/SendNotificationUseCase.test.ts index f3a4603aa..1c5925827 100644 --- a/core/notifications/application/use-cases/SendNotificationUseCase.test.ts +++ b/core/notifications/application/use-cases/SendNotificationUseCase.test.ts @@ -1,7 +1,7 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { describe, expect, it, vi, type Mock } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { SendNotificationUseCase, @@ -10,6 +10,8 @@ import { type SendNotificationResult, } from './SendNotificationUseCase'; +import { NotificationPreferenceRepository } from '../../domain/repositories/NotificationPreferenceRepository'; +import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; import type { NotificationChannel, NotificationType } from '../../domain/types/NotificationTypes'; import type { NotificationGatewayRegistry } from '../ports/NotificationGateway'; diff --git a/core/notifications/application/use-cases/SendNotificationUseCase.ts b/core/notifications/application/use-cases/SendNotificationUseCase.ts index 64bdf51cf..7a099f818 100644 --- a/core/notifications/application/use-cases/SendNotificationUseCase.ts +++ b/core/notifications/application/use-cases/SendNotificationUseCase.ts @@ -5,16 +5,16 @@ * based on their preferences. */ -import { NotificationChannel, NotificationType } from '../../domain/types/NotificationTypes'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuid } from 'uuid'; import type { NotificationData } from '../../domain/entities/Notification'; import { Notification } from '../../domain/entities/Notification'; -import type { NotificationDeliveryResult, NotificationGatewayRegistry } from '../ports/NotificationGateway'; -import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; import { NotificationPreferenceRepository } from '../../domain/repositories/NotificationPreferenceRepository'; +import { NotificationRepository } from '../../domain/repositories/NotificationRepository'; +import { NotificationChannel, NotificationType } from '../../domain/types/NotificationTypes'; +import type { NotificationDeliveryResult, NotificationGatewayRegistry } from '../ports/NotificationGateway'; export interface SendNotificationCommand { recipientId: string; diff --git a/core/notifications/domain/entities/Notification.test.ts b/core/notifications/domain/entities/Notification.test.ts index 6e8dddf0d..ba8987488 100644 --- a/core/notifications/domain/entities/Notification.test.ts +++ b/core/notifications/domain/entities/Notification.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/notifications/domain/entities/Notification'; +import { describe, expect, it } from 'vitest'; describe('notifications/domain/entities/Notification.ts', () => { it('imports', () => { diff --git a/core/notifications/domain/entities/NotificationPreference.test.ts b/core/notifications/domain/entities/NotificationPreference.test.ts index 15d225675..9f1f19e42 100644 --- a/core/notifications/domain/entities/NotificationPreference.test.ts +++ b/core/notifications/domain/entities/NotificationPreference.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/notifications/domain/entities/NotificationPreference'; +import { describe, expect, it } from 'vitest'; describe('notifications/domain/entities/NotificationPreference.ts', () => { it('imports', () => { diff --git a/core/notifications/domain/errors/NotificationDomainError.ts b/core/notifications/domain/errors/NotificationDomainError.ts index 4c1169a80..50db0123e 100644 --- a/core/notifications/domain/errors/NotificationDomainError.ts +++ b/core/notifications/domain/errors/NotificationDomainError.ts @@ -1,4 +1,4 @@ -import type { DomainError, CommonDomainErrorKind } from '@core/shared/errors/DomainError'; +import type { CommonDomainErrorKind, DomainError } from '@core/shared/errors/DomainError'; /** * Domain Error: NotificationDomainError diff --git a/core/notifications/domain/value-objects/NotificationId.test.ts b/core/notifications/domain/value-objects/NotificationId.test.ts index 073cc26af..9fe029153 100644 --- a/core/notifications/domain/value-objects/NotificationId.test.ts +++ b/core/notifications/domain/value-objects/NotificationId.test.ts @@ -1,5 +1,6 @@ -import { NotificationId } from './NotificationId'; +import { describe, expect, it } from 'vitest'; import { NotificationDomainError } from '../errors/NotificationDomainError'; +import { NotificationId } from './NotificationId'; describe('NotificationId', () => { it('creates a valid NotificationId from a non-empty string', () => { diff --git a/core/notifications/domain/value-objects/QuietHours.test.ts b/core/notifications/domain/value-objects/QuietHours.test.ts index 73cd6d03c..910c75b56 100644 --- a/core/notifications/domain/value-objects/QuietHours.test.ts +++ b/core/notifications/domain/value-objects/QuietHours.test.ts @@ -1,3 +1,4 @@ +import { describe, expect, it } from 'vitest'; import { QuietHours } from './QuietHours'; describe('QuietHours', () => { diff --git a/core/payments/application/use-cases/AwardPrizeUseCase.test.ts b/core/payments/application/use-cases/AwardPrizeUseCase.test.ts index 4fd50147c..783b3f9b3 100644 --- a/core/payments/application/use-cases/AwardPrizeUseCase.test.ts +++ b/core/payments/application/use-cases/AwardPrizeUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { AwardPrizeUseCase, type AwardPrizeInput } from './AwardPrizeUseCase'; -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { describe, expect, it, vi, type Mock } from 'vitest'; import { PrizeType, type Prize } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { AwardPrizeUseCase, type AwardPrizeInput } from './AwardPrizeUseCase'; describe('AwardPrizeUseCase', () => { let prizeRepository: { findById: Mock; update: Mock }; diff --git a/core/payments/application/use-cases/AwardPrizeUseCase.ts b/core/payments/application/use-cases/AwardPrizeUseCase.ts index 3b3ed9d00..248ead815 100644 --- a/core/payments/application/use-cases/AwardPrizeUseCase.ts +++ b/core/payments/application/use-cases/AwardPrizeUseCase.ts @@ -4,11 +4,11 @@ * Awards a prize to a driver. */ -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; -import type { Prize } from '../../domain/entities/Prize'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Prize } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; export interface AwardPrizeInput { prizeId: string; diff --git a/core/payments/application/use-cases/CreatePaymentUseCase.test.ts b/core/payments/application/use-cases/CreatePaymentUseCase.test.ts index 710e1bd90..55041f7ab 100644 --- a/core/payments/application/use-cases/CreatePaymentUseCase.test.ts +++ b/core/payments/application/use-cases/CreatePaymentUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { CreatePaymentUseCase, type CreatePaymentInput } from './CreatePaymentUseCase'; +import { describe, expect, it, vi, type Mock } from 'vitest'; +import { PayerType, PaymentStatus, PaymentType } from '../../domain/entities/Payment'; import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import { PaymentType, PayerType, PaymentStatus } from '../../domain/entities/Payment'; +import { CreatePaymentUseCase, type CreatePaymentInput } from './CreatePaymentUseCase'; describe('CreatePaymentUseCase', () => { let paymentRepository: { diff --git a/core/payments/application/use-cases/CreatePaymentUseCase.ts b/core/payments/application/use-cases/CreatePaymentUseCase.ts index 070d79d5c..ba629c372 100644 --- a/core/payments/application/use-cases/CreatePaymentUseCase.ts +++ b/core/payments/application/use-cases/CreatePaymentUseCase.ts @@ -4,12 +4,12 @@ * Creates a new payment. */ -import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import type { Payment, PaymentType, PayerType } from '../../domain/entities/Payment'; -import { PaymentStatus } from '../../domain/entities/Payment'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { PayerType, Payment, PaymentType } from '../../domain/entities/Payment'; +import { PaymentStatus } from '../../domain/entities/Payment'; +import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; export interface CreatePaymentInput { type: PaymentType; diff --git a/core/payments/application/use-cases/CreatePrizeUseCase.test.ts b/core/payments/application/use-cases/CreatePrizeUseCase.test.ts index 72c5f747c..9f9a12f58 100644 --- a/core/payments/application/use-cases/CreatePrizeUseCase.test.ts +++ b/core/payments/application/use-cases/CreatePrizeUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { CreatePrizeUseCase, type CreatePrizeInput } from './CreatePrizeUseCase'; -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { describe, expect, it, vi, type Mock } from 'vitest'; import { PrizeType, type Prize } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { CreatePrizeUseCase, type CreatePrizeInput } from './CreatePrizeUseCase'; describe('CreatePrizeUseCase', () => { let prizeRepository: { findByPosition: Mock; create: Mock }; diff --git a/core/payments/application/use-cases/CreatePrizeUseCase.ts b/core/payments/application/use-cases/CreatePrizeUseCase.ts index 0ceff5bcc..dd78e46e0 100644 --- a/core/payments/application/use-cases/CreatePrizeUseCase.ts +++ b/core/payments/application/use-cases/CreatePrizeUseCase.ts @@ -4,11 +4,11 @@ * Creates a new prize. */ -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; -import type { PrizeType, Prize } from '../../domain/entities/Prize'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Prize, PrizeType } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; export interface CreatePrizeInput { leagueId: string; diff --git a/core/payments/application/use-cases/DeletePrizeUseCase.test.ts b/core/payments/application/use-cases/DeletePrizeUseCase.test.ts index 77cc525f0..18ba27fda 100644 --- a/core/payments/application/use-cases/DeletePrizeUseCase.test.ts +++ b/core/payments/application/use-cases/DeletePrizeUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { DeletePrizeUseCase, type DeletePrizeInput } from './DeletePrizeUseCase'; -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { describe, expect, it, vi, type Mock } from 'vitest'; import { PrizeType, type Prize } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { DeletePrizeUseCase, type DeletePrizeInput } from './DeletePrizeUseCase'; describe('DeletePrizeUseCase', () => { let prizeRepository: { findById: Mock; delete: Mock }; diff --git a/core/payments/application/use-cases/DeletePrizeUseCase.ts b/core/payments/application/use-cases/DeletePrizeUseCase.ts index 80e49c97e..eaacb4317 100644 --- a/core/payments/application/use-cases/DeletePrizeUseCase.ts +++ b/core/payments/application/use-cases/DeletePrizeUseCase.ts @@ -4,10 +4,10 @@ * Deletes a prize. */ -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; export interface DeletePrizeInput { prizeId: string; diff --git a/core/payments/application/use-cases/GetMembershipFeesUseCase.test.ts b/core/payments/application/use-cases/GetMembershipFeesUseCase.test.ts index a8480036f..76ae22d9a 100644 --- a/core/payments/application/use-cases/GetMembershipFeesUseCase.test.ts +++ b/core/payments/application/use-cases/GetMembershipFeesUseCase.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; +import { describe, expect, it, vi, type Mock } from 'vitest'; +import type { MemberPaymentRepository, MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; import { GetMembershipFeesUseCase, type GetMembershipFeesInput } from './GetMembershipFeesUseCase'; -import type { MembershipFeeRepository, MemberPaymentRepository } from '../../domain/repositories/MembershipFeeRepository'; describe('GetMembershipFeesUseCase', () => { let membershipFeeRepository: { diff --git a/core/payments/application/use-cases/GetMembershipFeesUseCase.ts b/core/payments/application/use-cases/GetMembershipFeesUseCase.ts index 8865c28a0..732818678 100644 --- a/core/payments/application/use-cases/GetMembershipFeesUseCase.ts +++ b/core/payments/application/use-cases/GetMembershipFeesUseCase.ts @@ -4,12 +4,12 @@ * Retrieves membership fees and member payments. */ -import type { MembershipFeeRepository, MemberPaymentRepository } from '../../domain/repositories/MembershipFeeRepository'; -import type { MembershipFee } from '../../domain/entities/MembershipFee'; -import type { MemberPayment } from '../../domain/entities/MemberPayment'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { MemberPayment } from '../../domain/entities/MemberPayment'; +import type { MembershipFee } from '../../domain/entities/MembershipFee'; +import type { MemberPaymentRepository, MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; export type GetMembershipFeesErrorCode = 'INVALID_INPUT'; diff --git a/core/payments/application/use-cases/GetPaymentsUseCase.test.ts b/core/payments/application/use-cases/GetPaymentsUseCase.test.ts index 813bbbc12..99fbb75de 100644 --- a/core/payments/application/use-cases/GetPaymentsUseCase.test.ts +++ b/core/payments/application/use-cases/GetPaymentsUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { GetPaymentsUseCase, type GetPaymentsInput } from './GetPaymentsUseCase'; +import { describe, expect, it, vi, type Mock } from 'vitest'; +import { PayerType, PaymentType } from '../../domain/entities/Payment'; import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import { PaymentType, PayerType } from '../../domain/entities/Payment'; +import { GetPaymentsUseCase, type GetPaymentsInput } from './GetPaymentsUseCase'; describe('GetPaymentsUseCase', () => { let paymentRepository: { diff --git a/core/payments/application/use-cases/GetPaymentsUseCase.ts b/core/payments/application/use-cases/GetPaymentsUseCase.ts index 44a6656e1..5a144352b 100644 --- a/core/payments/application/use-cases/GetPaymentsUseCase.ts +++ b/core/payments/application/use-cases/GetPaymentsUseCase.ts @@ -4,11 +4,11 @@ * Retrieves payments based on filters. */ -import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import type { Payment, PaymentType } from '../../domain/entities/Payment'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Payment, PaymentType } from '../../domain/entities/Payment'; +import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; export interface GetPaymentsInput { leagueId?: string; diff --git a/core/payments/application/use-cases/GetPrizesUseCase.test.ts b/core/payments/application/use-cases/GetPrizesUseCase.test.ts index 3f12a1cac..84f9ba08e 100644 --- a/core/payments/application/use-cases/GetPrizesUseCase.test.ts +++ b/core/payments/application/use-cases/GetPrizesUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { GetPrizesUseCase, type GetPrizesInput } from './GetPrizesUseCase'; -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { describe, expect, it, vi, type Mock } from 'vitest'; import { PrizeType, type Prize } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; +import { GetPrizesUseCase, type GetPrizesInput } from './GetPrizesUseCase'; describe('GetPrizesUseCase', () => { let prizeRepository: { diff --git a/core/payments/application/use-cases/GetPrizesUseCase.ts b/core/payments/application/use-cases/GetPrizesUseCase.ts index de3aabf16..e218ba0d6 100644 --- a/core/payments/application/use-cases/GetPrizesUseCase.ts +++ b/core/payments/application/use-cases/GetPrizesUseCase.ts @@ -4,10 +4,10 @@ * Retrieves prizes for a league or season. */ -import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; -import type { Prize } from '../../domain/entities/Prize'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; +import type { Prize } from '../../domain/entities/Prize'; +import type { PrizeRepository } from '../../domain/repositories/PrizeRepository'; export interface GetPrizesInput { leagueId: string; diff --git a/core/payments/application/use-cases/GetSponsorBillingUseCase.test.ts b/core/payments/application/use-cases/GetSponsorBillingUseCase.test.ts index 310f89360..a2d843273 100644 --- a/core/payments/application/use-cases/GetSponsorBillingUseCase.test.ts +++ b/core/payments/application/use-cases/GetSponsorBillingUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { GetSponsorBillingUseCase, type GetSponsorBillingInput } from './GetSponsorBillingUseCase'; -import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import type { Payment } from '../../domain/entities/Payment'; -import { PaymentStatus, PaymentType, PayerType } from '../../domain/entities/Payment'; -import type { SeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; import { SeasonSponsorship } from '@core/racing/domain/entities/season/SeasonSponsorship'; +import type { SeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; import { Money } from '@core/racing/domain/value-objects/Money'; +import { describe, expect, it, vi, type Mock } from 'vitest'; +import type { Payment } from '../../domain/entities/Payment'; +import { PayerType, PaymentStatus, PaymentType } from '../../domain/entities/Payment'; +import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; +import { GetSponsorBillingUseCase, type GetSponsorBillingInput } from './GetSponsorBillingUseCase'; describe('GetSponsorBillingUseCase', () => { let paymentRepository: { findByFilters: Mock }; diff --git a/core/payments/application/use-cases/GetSponsorBillingUseCase.ts b/core/payments/application/use-cases/GetSponsorBillingUseCase.ts index 467df84c4..4a90fb9c4 100644 --- a/core/payments/application/use-cases/GetSponsorBillingUseCase.ts +++ b/core/payments/application/use-cases/GetSponsorBillingUseCase.ts @@ -1,9 +1,9 @@ -import { PaymentStatus, PaymentType } from '../../domain/entities/Payment'; import type { SeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; -import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { PaymentStatus, PaymentType } from '../../domain/entities/Payment'; +import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; export interface SponsorBillingStats { totalSpent: number; diff --git a/core/payments/application/use-cases/GetWalletUseCase.test.ts b/core/payments/application/use-cases/GetWalletUseCase.test.ts index c961185e7..b4c92e1ee 100644 --- a/core/payments/application/use-cases/GetWalletUseCase.test.ts +++ b/core/payments/application/use-cases/GetWalletUseCase.test.ts @@ -1,8 +1,8 @@ import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; -import { GetWalletUseCase, type GetWalletInput } from './GetWalletUseCase'; -import type { TransactionRepository, WalletRepository } from '../../domain/repositories/WalletRepository'; import type { Transaction, Wallet } from '../../domain/entities/Wallet'; import { TransactionType } from '../../domain/entities/Wallet'; +import type { TransactionRepository, WalletRepository } from '../../domain/repositories/WalletRepository'; +import { GetWalletUseCase, type GetWalletInput } from './GetWalletUseCase'; describe('GetWalletUseCase', () => { let walletRepository: { diff --git a/core/payments/application/use-cases/GetWalletUseCase.ts b/core/payments/application/use-cases/GetWalletUseCase.ts index a72b64955..4d350404c 100644 --- a/core/payments/application/use-cases/GetWalletUseCase.ts +++ b/core/payments/application/use-cases/GetWalletUseCase.ts @@ -4,11 +4,11 @@ * Retrieves wallet information and transactions. */ -import type { WalletRepository, TransactionRepository } from '../../domain/repositories/WalletRepository'; -import type { Wallet, Transaction } from '../../domain/entities/Wallet'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Transaction, Wallet } from '../../domain/entities/Wallet'; +import type { TransactionRepository, WalletRepository } from '../../domain/repositories/WalletRepository'; export type GetWalletErrorCode = 'INVALID_INPUT'; diff --git a/core/payments/application/use-cases/ProcessWalletTransactionUseCase.test.ts b/core/payments/application/use-cases/ProcessWalletTransactionUseCase.test.ts index d67767d15..38f0a99bd 100644 --- a/core/payments/application/use-cases/ProcessWalletTransactionUseCase.test.ts +++ b/core/payments/application/use-cases/ProcessWalletTransactionUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; +import { describe, expect, it, vi, type Mock } from 'vitest'; +import { ReferenceType, TransactionType } from '../../domain/entities/Wallet'; +import type { TransactionRepository, WalletRepository } from '../../domain/repositories/WalletRepository'; import { ProcessWalletTransactionUseCase, type ProcessWalletTransactionInput } from './ProcessWalletTransactionUseCase'; -import type { WalletRepository, TransactionRepository } from '../../domain/repositories/WalletRepository'; -import { TransactionType, ReferenceType } from '../../domain/entities/Wallet'; describe('ProcessWalletTransactionUseCase', () => { let walletRepository: { diff --git a/core/payments/application/use-cases/ProcessWalletTransactionUseCase.ts b/core/payments/application/use-cases/ProcessWalletTransactionUseCase.ts index 71a876923..24c583f32 100644 --- a/core/payments/application/use-cases/ProcessWalletTransactionUseCase.ts +++ b/core/payments/application/use-cases/ProcessWalletTransactionUseCase.ts @@ -4,12 +4,12 @@ * Processes a wallet transaction (deposit or withdrawal). */ -import type { WalletRepository, TransactionRepository } from '../../domain/repositories/WalletRepository'; -import type { Wallet, Transaction } from '../../domain/entities/Wallet'; -import { TransactionType, ReferenceType } from '../../domain/entities/Wallet'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Transaction, Wallet } from '../../domain/entities/Wallet'; +import { ReferenceType, TransactionType } from '../../domain/entities/Wallet'; +import type { TransactionRepository, WalletRepository } from '../../domain/repositories/WalletRepository'; export interface ProcessWalletTransactionInput { leagueId: string; diff --git a/core/payments/application/use-cases/UpdateMemberPaymentUseCase.test.ts b/core/payments/application/use-cases/UpdateMemberPaymentUseCase.test.ts index aa3e43bf8..28ff89c60 100644 --- a/core/payments/application/use-cases/UpdateMemberPaymentUseCase.test.ts +++ b/core/payments/application/use-cases/UpdateMemberPaymentUseCase.test.ts @@ -1,7 +1,7 @@ import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; -import { UpdateMemberPaymentUseCase, type UpdateMemberPaymentInput } from './UpdateMemberPaymentUseCase'; -import type { MembershipFeeRepository, MemberPaymentRepository } from '../../domain/repositories/MembershipFeeRepository'; import { MemberPaymentStatus, type MemberPayment } from '../../domain/entities/MemberPayment'; +import type { MemberPaymentRepository, MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; +import { UpdateMemberPaymentUseCase, type UpdateMemberPaymentInput } from './UpdateMemberPaymentUseCase'; describe('UpdateMemberPaymentUseCase', () => { let membershipFeeRepository: { diff --git a/core/payments/application/use-cases/UpdateMemberPaymentUseCase.ts b/core/payments/application/use-cases/UpdateMemberPaymentUseCase.ts index 05aef4fd3..7fc2a8d0d 100644 --- a/core/payments/application/use-cases/UpdateMemberPaymentUseCase.ts +++ b/core/payments/application/use-cases/UpdateMemberPaymentUseCase.ts @@ -4,12 +4,12 @@ * Updates a member payment record. */ -import type { MembershipFeeRepository, MemberPaymentRepository } from '../../domain/repositories/MembershipFeeRepository'; -import type { MemberPayment } from '../../domain/entities/MemberPayment'; -import { MemberPaymentStatus } from '../../domain/entities/MemberPayment'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { MemberPayment } from '../../domain/entities/MemberPayment'; +import { MemberPaymentStatus } from '../../domain/entities/MemberPayment'; +import type { MemberPaymentRepository, MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; const PLATFORM_FEE_RATE = 0.10; diff --git a/core/payments/application/use-cases/UpdatePaymentStatusUseCase.test.ts b/core/payments/application/use-cases/UpdatePaymentStatusUseCase.test.ts index bcdd3bbfe..f022bdf2c 100644 --- a/core/payments/application/use-cases/UpdatePaymentStatusUseCase.test.ts +++ b/core/payments/application/use-cases/UpdatePaymentStatusUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { UpdatePaymentStatusUseCase, type UpdatePaymentStatusInput } from './UpdatePaymentStatusUseCase'; +import { describe, expect, it, vi, type Mock } from 'vitest'; +import { PayerType, PaymentStatus, PaymentType } from '../../domain/entities/Payment'; import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import { PaymentStatus, PaymentType, PayerType } from '../../domain/entities/Payment'; +import { UpdatePaymentStatusUseCase, type UpdatePaymentStatusInput } from './UpdatePaymentStatusUseCase'; describe('UpdatePaymentStatusUseCase', () => { let paymentRepository: { diff --git a/core/payments/application/use-cases/UpdatePaymentStatusUseCase.ts b/core/payments/application/use-cases/UpdatePaymentStatusUseCase.ts index 6e4329a2e..3dcfd6fb8 100644 --- a/core/payments/application/use-cases/UpdatePaymentStatusUseCase.ts +++ b/core/payments/application/use-cases/UpdatePaymentStatusUseCase.ts @@ -4,12 +4,12 @@ * Updates the status of a payment. */ -import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; -import type { Payment } from '../../domain/entities/Payment'; -import { PaymentStatus } from '../../domain/entities/Payment'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Payment } from '../../domain/entities/Payment'; +import { PaymentStatus } from '../../domain/entities/Payment'; +import type { PaymentRepository } from '../../domain/repositories/PaymentRepository'; export type UpdatePaymentStatusErrorCode = 'PAYMENT_NOT_FOUND'; diff --git a/core/payments/application/use-cases/UpsertMembershipFeeUseCase.test.ts b/core/payments/application/use-cases/UpsertMembershipFeeUseCase.test.ts index 0e37142d1..b548f7f96 100644 --- a/core/payments/application/use-cases/UpsertMembershipFeeUseCase.test.ts +++ b/core/payments/application/use-cases/UpsertMembershipFeeUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, vi, type Mock } from 'vitest'; -import { UpsertMembershipFeeUseCase, type UpsertMembershipFeeInput } from './UpsertMembershipFeeUseCase'; -import type { MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; +import { describe, expect, it, vi, type Mock } from 'vitest'; import { MembershipFeeType } from '../../domain/entities/MembershipFee'; +import type { MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; +import { UpsertMembershipFeeUseCase, type UpsertMembershipFeeInput } from './UpsertMembershipFeeUseCase'; describe('UpsertMembershipFeeUseCase', () => { let membershipFeeRepository: { diff --git a/core/payments/application/use-cases/UpsertMembershipFeeUseCase.ts b/core/payments/application/use-cases/UpsertMembershipFeeUseCase.ts index 487ba3dfb..9f6538dca 100644 --- a/core/payments/application/use-cases/UpsertMembershipFeeUseCase.ts +++ b/core/payments/application/use-cases/UpsertMembershipFeeUseCase.ts @@ -4,10 +4,10 @@ * Creates or updates membership fee configuration. */ -import type { MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; -import type { MembershipFeeType, MembershipFee } from '../../domain/entities/MembershipFee'; import type { UseCase } from '@core/shared/application/UseCase'; import { Result } from '@core/shared/domain/Result'; +import type { MembershipFee, MembershipFeeType } from '../../domain/entities/MembershipFee'; +import type { MembershipFeeRepository } from '../../domain/repositories/MembershipFeeRepository'; export interface UpsertMembershipFeeInput { leagueId: string; diff --git a/core/payments/domain/entities/MemberPayment.test.ts b/core/payments/domain/entities/MemberPayment.test.ts index 5eb26f327..f58ed5929 100644 --- a/core/payments/domain/entities/MemberPayment.test.ts +++ b/core/payments/domain/entities/MemberPayment.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/payments/domain/entities/MemberPayment'; +import { describe, expect, it } from 'vitest'; describe('payments/domain/entities/MemberPayment.ts', () => { it('imports', () => { diff --git a/core/payments/domain/entities/MembershipFee.test.ts b/core/payments/domain/entities/MembershipFee.test.ts index b70ed1723..928671780 100644 --- a/core/payments/domain/entities/MembershipFee.test.ts +++ b/core/payments/domain/entities/MembershipFee.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/payments/domain/entities/MembershipFee'; +import { describe, expect, it } from 'vitest'; describe('payments/domain/entities/MembershipFee.ts', () => { it('imports', () => { diff --git a/core/payments/domain/entities/Payment.test.ts b/core/payments/domain/entities/Payment.test.ts index e6866f16b..d4c5828d3 100644 --- a/core/payments/domain/entities/Payment.test.ts +++ b/core/payments/domain/entities/Payment.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/payments/domain/entities/Payment'; +import { describe, expect, it } from 'vitest'; describe('payments/domain/entities/Payment.ts', () => { it('imports', () => { diff --git a/core/payments/domain/entities/Prize.test.ts b/core/payments/domain/entities/Prize.test.ts index 9300c1fef..4b0e76833 100644 --- a/core/payments/domain/entities/Prize.test.ts +++ b/core/payments/domain/entities/Prize.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/payments/domain/entities/Prize'; +import { describe, expect, it } from 'vitest'; describe('payments/domain/entities/Prize.ts', () => { it('imports', () => { diff --git a/core/payments/domain/entities/Wallet.test.ts b/core/payments/domain/entities/Wallet.test.ts index 45e7fbc3e..afc734547 100644 --- a/core/payments/domain/entities/Wallet.test.ts +++ b/core/payments/domain/entities/Wallet.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/payments/domain/entities/Wallet'; +import { describe, expect, it } from 'vitest'; describe('payments/domain/entities/Wallet.ts', () => { it('imports', () => { diff --git a/core/payments/domain/repositories/MembershipFeeRepository.ts b/core/payments/domain/repositories/MembershipFeeRepository.ts index 73cd40763..454a4f7b8 100644 --- a/core/payments/domain/repositories/MembershipFeeRepository.ts +++ b/core/payments/domain/repositories/MembershipFeeRepository.ts @@ -2,8 +2,8 @@ * Repository Interface: MembershipFeeRepository */ -import type { MembershipFee } from '../entities/MembershipFee'; import type { MemberPayment } from '../entities/MemberPayment'; +import type { MembershipFee } from '../entities/MembershipFee'; export interface MembershipFeeRepository { findById(id: string): Promise; diff --git a/core/payments/domain/repositories/WalletRepository.ts b/core/payments/domain/repositories/WalletRepository.ts index 51618ccd9..87446077e 100644 --- a/core/payments/domain/repositories/WalletRepository.ts +++ b/core/payments/domain/repositories/WalletRepository.ts @@ -2,7 +2,7 @@ * Repository Interface: WalletRepository */ -import type { Wallet, Transaction } from '../entities/Wallet'; +import type { Transaction, Wallet } from '../entities/Wallet'; export interface WalletRepository { findById(id: string): Promise; diff --git a/core/ports/media/MediaResolverPort.test.ts b/core/ports/media/MediaResolverPort.test.ts index 2a7e82bc5..be5e7d7a7 100644 --- a/core/ports/media/MediaResolverPort.test.ts +++ b/core/ports/media/MediaResolverPort.test.ts @@ -9,8 +9,8 @@ */ import { MediaReference } from '@core/domain/media/MediaReference'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { MediaResolverPort } from './MediaResolverPort'; -import { vi, describe, it, expect, beforeEach } from 'vitest'; describe('MediaResolverPort', () => { let mockResolver: MediaResolverPort; diff --git a/core/racing/application/queries/GetTeamRatingLedgerQuery.test.ts b/core/racing/application/queries/GetTeamRatingLedgerQuery.test.ts index f8b2d39c1..463c0fd4e 100644 --- a/core/racing/application/queries/GetTeamRatingLedgerQuery.test.ts +++ b/core/racing/application/queries/GetTeamRatingLedgerQuery.test.ts @@ -2,13 +2,13 @@ * Tests for GetTeamRatingLedgerQuery */ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { GetTeamRatingLedgerQuery, GetTeamRatingLedgerQueryHandler } from './GetTeamRatingLedgerQuery'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { TeamRatingEvent } from '../../domain/entities/TeamRatingEvent'; -import { TeamRatingEventId } from '../../domain/value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../../domain/value-objects/TeamRatingDimensionKey'; -import { TeamRatingDelta } from '../../domain/value-objects/TeamRatingDelta'; import type { TeamRatingEventRepository } from '../../domain/repositories/TeamRatingEventRepository'; +import { TeamRatingDelta } from '../../domain/value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '../../domain/value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../../domain/value-objects/TeamRatingEventId'; +import { GetTeamRatingLedgerQuery, GetTeamRatingLedgerQueryHandler } from './GetTeamRatingLedgerQuery'; describe('GetTeamRatingLedgerQuery', () => { let mockRatingEventRepo: { findEventsPaginated: Mock }; diff --git a/core/racing/application/queries/GetTeamRatingLedgerQuery.ts b/core/racing/application/queries/GetTeamRatingLedgerQuery.ts index 0f210ca27..4397cba8c 100644 --- a/core/racing/application/queries/GetTeamRatingLedgerQuery.ts +++ b/core/racing/application/queries/GetTeamRatingLedgerQuery.ts @@ -5,8 +5,8 @@ * Mirrors user slice 6 pattern but for teams. */ -import { TeamLedgerEntryDto, TeamLedgerFilter, PaginatedTeamLedgerResult } from '../dtos/TeamLedgerEntryDto'; -import { TeamRatingEventRepository, PaginatedQueryOptions, TeamRatingEventFilter } from '../../domain/repositories/TeamRatingEventRepository'; +import { PaginatedQueryOptions, TeamRatingEventFilter, TeamRatingEventRepository } from '../../domain/repositories/TeamRatingEventRepository'; +import { PaginatedTeamLedgerResult, TeamLedgerEntryDto, TeamLedgerFilter } from '../dtos/TeamLedgerEntryDto'; export interface GetTeamRatingLedgerQuery { teamId: string; diff --git a/core/racing/application/queries/GetTeamRatingsSummaryQuery.test.ts b/core/racing/application/queries/GetTeamRatingsSummaryQuery.test.ts index 8c922c396..fd3db50d6 100644 --- a/core/racing/application/queries/GetTeamRatingsSummaryQuery.test.ts +++ b/core/racing/application/queries/GetTeamRatingsSummaryQuery.test.ts @@ -2,16 +2,16 @@ * Tests for GetTeamRatingsSummaryQuery */ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { GetTeamRatingsSummaryQuery, GetTeamRatingsSummaryQueryHandler } from './GetTeamRatingsSummaryQuery'; -import { TeamRatingSnapshot } from '../../domain/services/TeamRatingSnapshotCalculator'; -import { TeamRatingValue } from '../../domain/value-objects/TeamRatingValue'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { TeamRatingEvent } from '../../domain/entities/TeamRatingEvent'; -import { TeamRatingEventId } from '../../domain/value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../../domain/value-objects/TeamRatingDimensionKey'; -import { TeamRatingDelta } from '../../domain/value-objects/TeamRatingDelta'; -import type { TeamRatingRepository } from '../../domain/repositories/TeamRatingRepository'; import type { TeamRatingEventRepository } from '../../domain/repositories/TeamRatingEventRepository'; +import type { TeamRatingRepository } from '../../domain/repositories/TeamRatingRepository'; +import { TeamRatingSnapshot } from '../../domain/services/TeamRatingSnapshotCalculator'; +import { TeamRatingDelta } from '../../domain/value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '../../domain/value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../../domain/value-objects/TeamRatingEventId'; +import { TeamRatingValue } from '../../domain/value-objects/TeamRatingValue'; +import { GetTeamRatingsSummaryQuery, GetTeamRatingsSummaryQueryHandler } from './GetTeamRatingsSummaryQuery'; describe('GetTeamRatingsSummaryQuery', () => { let mockTeamRatingRepo: { findByTeamId: Mock }; diff --git a/core/racing/application/queries/GetTeamRatingsSummaryQuery.ts b/core/racing/application/queries/GetTeamRatingsSummaryQuery.ts index ef83ad677..942912ab4 100644 --- a/core/racing/application/queries/GetTeamRatingsSummaryQuery.ts +++ b/core/racing/application/queries/GetTeamRatingsSummaryQuery.ts @@ -5,9 +5,9 @@ * Mirrors user slice 6 pattern but for teams. */ -import { TeamRatingSummaryDto } from '../dtos/TeamRatingSummaryDto'; -import { TeamRatingRepository } from '../../domain/repositories/TeamRatingRepository'; import { TeamRatingEventRepository } from '../../domain/repositories/TeamRatingEventRepository'; +import { TeamRatingRepository } from '../../domain/repositories/TeamRatingRepository'; +import { TeamRatingSummaryDto } from '../dtos/TeamRatingSummaryDto'; export interface GetTeamRatingsSummaryQuery { teamId: string; diff --git a/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.test.ts b/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.test.ts index 951e4a25b..223679e6a 100644 --- a/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.test.ts +++ b/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.test.ts @@ -1,9 +1,14 @@ import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { WalletRepository } from '../../../payments/domain/repositories/WalletRepository'; import { LeagueWallet } from '../../domain/entities/league-wallet/LeagueWallet'; import { Season } from '../../domain/entities/season/Season'; import { SponsorshipRequest } from '../../domain/entities/SponsorshipRequest'; +import { LeagueWalletRepository } from '../../domain/repositories/LeagueWalletRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; +import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; import { Money } from '../../domain/value-objects/Money'; import { AcceptSponsorshipRequestUseCase } from './AcceptSponsorshipRequestUseCase'; diff --git a/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.ts b/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.ts index 8cdfd5565..5e18b9d4f 100644 --- a/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.ts +++ b/core/racing/application/use-cases/AcceptSponsorshipRequestUseCase.ts @@ -6,15 +6,15 @@ */ import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; +import { WalletRepository } from '@core/payments/domain/repositories/WalletRepository'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; -import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; -import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import { WalletRepository } from '@core/payments/domain/repositories/WalletRepository'; import { LeagueWalletRepository } from '../../domain/repositories/LeagueWalletRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; +import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; export interface AcceptSponsorshipRequestInput { requestId: string; diff --git a/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.test.ts b/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.test.ts index 2416efed8..3ee21e41c 100644 --- a/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.test.ts +++ b/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.test.ts @@ -1,12 +1,13 @@ -import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; +import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; -import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; -import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '@core/racing/domain/value-objects/TeamRatingDimensionKey'; -import { TeamRatingDelta } from '@core/racing/domain/value-objects/TeamRatingDelta'; import { TeamRating } from '@core/racing/domain/value-objects/TeamRating'; -import { describe, it, expect, beforeEach, afterEach } from 'vitest'; +import { TeamRatingDelta } from '@core/racing/domain/value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '@core/racing/domain/value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; +import { PaginatedResult } from '../../domain/repositories/TeamRatingEventRepository'; +import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; // Mock repositories class MockTeamRatingEventRepository implements TeamRatingEventRepository { diff --git a/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.ts b/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.ts index e23c91582..6ea4bbdf3 100644 --- a/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.ts +++ b/core/racing/application/use-cases/AppendTeamRatingEventsUseCase.ts @@ -1,6 +1,6 @@ +import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import type { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import type { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; -import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingSnapshotCalculator } from '@core/racing/domain/services/TeamRatingSnapshotCalculator'; /** diff --git a/core/racing/application/use-cases/ApplyForSponsorshipUseCase.test.ts b/core/racing/application/use-cases/ApplyForSponsorshipUseCase.test.ts index 7dee2372e..bbd686c57 100644 --- a/core/racing/application/use-cases/ApplyForSponsorshipUseCase.test.ts +++ b/core/racing/application/use-cases/ApplyForSponsorshipUseCase.test.ts @@ -1,5 +1,8 @@ import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { SponsorshipPricingRepository } from '../../domain/repositories/SponsorshipPricingRepository'; +import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; import { Money } from '../../domain/value-objects/Money'; import { ApplyForSponsorshipUseCase } from './ApplyForSponsorshipUseCase'; diff --git a/core/racing/application/use-cases/ApplyForSponsorshipUseCase.ts b/core/racing/application/use-cases/ApplyForSponsorshipUseCase.ts index ba171d162..519237caf 100644 --- a/core/racing/application/use-cases/ApplyForSponsorshipUseCase.ts +++ b/core/racing/application/use-cases/ApplyForSponsorshipUseCase.ts @@ -5,14 +5,14 @@ * (driver, team, race, or season/league). */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { SponsorshipRequest } from '../../domain/entities/SponsorshipRequest'; -import { Money, isCurrency } from '../../domain/value-objects/Money'; -import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; -import { SponsorshipPricingRepository } from '../../domain/repositories/SponsorshipPricingRepository'; import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { SponsorshipPricingRepository } from '../../domain/repositories/SponsorshipPricingRepository'; +import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; +import { Money, isCurrency } from '../../domain/value-objects/Money'; export interface ApplyForSponsorshipInput { sponsorId: string; diff --git a/core/racing/application/use-cases/ApplyPenaltyUseCase.test.ts b/core/racing/application/use-cases/ApplyPenaltyUseCase.test.ts index 41f0dc1bc..e9ec50cb0 100644 --- a/core/racing/application/use-cases/ApplyPenaltyUseCase.test.ts +++ b/core/racing/application/use-cases/ApplyPenaltyUseCase.test.ts @@ -1,10 +1,11 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; -import { ApplyPenaltyUseCase } from './ApplyPenaltyUseCase'; +import { Penalty } from '../../domain/entities/Penalty'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { Logger } from '@core/shared/domain/Logger'; +import { ApplyPenaltyUseCase } from './ApplyPenaltyUseCase'; describe('ApplyPenaltyUseCase', () => { let mockPenaltyRepo: { diff --git a/core/racing/application/use-cases/ApplyPenaltyUseCase.ts b/core/racing/application/use-cases/ApplyPenaltyUseCase.ts index 357d44039..85a604b3c 100644 --- a/core/racing/application/use-cases/ApplyPenaltyUseCase.ts +++ b/core/racing/application/use-cases/ApplyPenaltyUseCase.ts @@ -5,15 +5,15 @@ * The penalty can be standalone or linked to an upheld protest. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { randomUUID } from 'crypto'; import { Penalty } from '../../domain/entities/penalty/Penalty'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; export interface ApplyPenaltyInput { raceId: string; diff --git a/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.test.ts b/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.test.ts index 2f27ca51d..eee0ff1e1 100644 --- a/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.test.ts +++ b/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.test.ts @@ -1,10 +1,10 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - ApproveLeagueJoinRequestUseCase, -} from './ApproveLeagueJoinRequestUseCase'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import { League } from '../../domain/entities/League'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + ApproveLeagueJoinRequestUseCase, +} from './ApproveLeagueJoinRequestUseCase'; describe('ApproveLeagueJoinRequestUseCase', () => { let mockLeagueMembershipRepo: { getJoinRequests: Mock; diff --git a/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.ts b/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.ts index f5661155d..890abdc9a 100644 --- a/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.ts +++ b/core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase.ts @@ -1,9 +1,9 @@ -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { randomUUID } from 'crypto'; import { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; export interface ApproveLeagueJoinRequestInput { leagueId: string; diff --git a/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.test.ts b/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.test.ts index 5b350cd19..70dc8bde6 100644 --- a/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.test.ts +++ b/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { ApproveTeamJoinRequestUseCase } from './ApproveTeamJoinRequestUseCase'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { ApproveTeamJoinRequestUseCase } from './ApproveTeamJoinRequestUseCase'; describe('ApproveTeamJoinRequestUseCase', () => { let useCase: ApproveTeamJoinRequestUseCase; diff --git a/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.ts b/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.ts index ea0ebec9e..b57a593ee 100644 --- a/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.ts +++ b/core/racing/application/use-cases/ApproveTeamJoinRequestUseCase.ts @@ -2,8 +2,8 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; import type { - TeamJoinRequest, - TeamMembership, + TeamJoinRequest, + TeamMembership, } from '../../domain/types/TeamMembership'; export type ApproveTeamJoinRequestInput = { diff --git a/core/racing/application/use-cases/CancelRaceUseCase.test.ts b/core/racing/application/use-cases/CancelRaceUseCase.test.ts index af71657f1..8833fad82 100644 --- a/core/racing/application/use-cases/CancelRaceUseCase.test.ts +++ b/core/racing/application/use-cases/CancelRaceUseCase.test.ts @@ -1,9 +1,9 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import { Race } from '../../domain/entities/Race'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; import { SessionType } from '../../domain/value-objects/SessionType'; import { CancelRaceUseCase } from './CancelRaceUseCase'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { Logger } from '@core/shared/domain/Logger'; describe('CancelRaceUseCase', () => { let useCase: CancelRaceUseCase; diff --git a/core/racing/application/use-cases/CancelRaceUseCase.ts b/core/racing/application/use-cases/CancelRaceUseCase.ts index cc0c83ca4..b24451a45 100644 --- a/core/racing/application/use-cases/CancelRaceUseCase.ts +++ b/core/racing/application/use-cases/CancelRaceUseCase.ts @@ -1,5 +1,5 @@ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Race } from '../../domain/entities/Race'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; diff --git a/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.test.ts b/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.test.ts index 865510df3..0f5be2335 100644 --- a/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.test.ts +++ b/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.test.ts @@ -1,13 +1,13 @@ +import { DomainEventPublisher } from '@core/shared/domain/DomainEvent'; +import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import { RaceEvent } from '../../domain/entities/RaceEvent'; import { Session } from '../../domain/entities/Session'; -import { SessionType } from '../../domain/value-objects/SessionType'; -import { CloseRaceEventStewardingUseCase } from './CloseRaceEventStewardingUseCase'; +import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import { RaceEventRepository } from '../../domain/repositories/RaceEventRepository'; import { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; -import { DomainEventPublisher } from '@core/shared/domain/DomainEvent'; -import type { Logger } from '@core/shared/domain/Logger'; +import { SessionType } from '../../domain/value-objects/SessionType'; +import { CloseRaceEventStewardingUseCase } from './CloseRaceEventStewardingUseCase'; describe('CloseRaceEventStewardingUseCase', () => { let useCase: CloseRaceEventStewardingUseCase; diff --git a/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.ts b/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.ts index 118879e99..1057da603 100644 --- a/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.ts +++ b/core/racing/application/use-cases/CloseRaceEventStewardingUseCase.ts @@ -4,9 +4,9 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { RaceEvent } from '../../domain/entities/RaceEvent'; import { RaceEventStewardingClosedEvent } from '../../domain/events/RaceEventStewardingClosed'; +import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import { RaceEventRepository } from '../../domain/repositories/RaceEventRepository'; import { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; export type CloseRaceEventStewardingInput = { raceId: string; diff --git a/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.test.ts b/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.test.ts index 8442a4f46..3164e2245 100644 --- a/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.test.ts +++ b/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, afterEach, vi, Mock } from 'vitest'; -import { - CompleteDriverOnboardingUseCase, - type CompleteDriverOnboardingInput, -} from './CompleteDriverOnboardingUseCase'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import { Driver } from '../../domain/entities/Driver'; import type { Logger } from '@core/shared/application/Logger'; +import { afterEach, beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { Driver } from '../../domain/entities/Driver'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { + CompleteDriverOnboardingUseCase, + type CompleteDriverOnboardingInput, +} from './CompleteDriverOnboardingUseCase'; describe('CompleteDriverOnboardingUseCase', () => { let useCase: CompleteDriverOnboardingUseCase; diff --git a/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.ts b/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.ts index 2accc8516..e11b42d71 100644 --- a/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.ts +++ b/core/racing/application/use-cases/CompleteDriverOnboardingUseCase.ts @@ -1,8 +1,8 @@ -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import { Driver } from '../../domain/entities/Driver'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; +import { Driver } from '../../domain/entities/Driver'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; export interface CompleteDriverOnboardingInput { userId: string; diff --git a/core/racing/application/use-cases/CompleteRaceUseCase.test.ts b/core/racing/application/use-cases/CompleteRaceUseCase.test.ts index dca7420a1..ecb4386b3 100644 --- a/core/racing/application/use-cases/CompleteRaceUseCase.test.ts +++ b/core/racing/application/use-cases/CompleteRaceUseCase.test.ts @@ -1,9 +1,9 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { CompleteRaceUseCase, type CompleteRaceInput } from './CompleteRaceUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; import type { StandingRepository } from '../../domain/repositories/StandingRepository'; +import { CompleteRaceUseCase, type CompleteRaceInput } from './CompleteRaceUseCase'; describe('CompleteRaceUseCase', () => { let useCase: CompleteRaceUseCase; diff --git a/core/racing/application/use-cases/CompleteRaceUseCase.ts b/core/racing/application/use-cases/CompleteRaceUseCase.ts index 15ccd5ac6..a5d33134a 100644 --- a/core/racing/application/use-cases/CompleteRaceUseCase.ts +++ b/core/racing/application/use-cases/CompleteRaceUseCase.ts @@ -1,11 +1,11 @@ -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { StandingRepository } from '../../domain/repositories/StandingRepository'; -import { Result as RaceResult } from '../../domain/entities/result/Result'; -import { Standing } from '../../domain/entities/Standing'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Result as RaceResult } from '../../domain/entities/result/Result'; +import { Standing } from '../../domain/entities/Standing'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import type { StandingRepository } from '../../domain/repositories/StandingRepository'; export interface CompleteRaceInput { raceId: string; diff --git a/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.test.ts b/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.test.ts index 8e37472bf..7339b31de 100644 --- a/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.test.ts +++ b/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - CompleteRaceUseCaseWithRatings, - type CompleteRaceWithRatingsInput, -} from './CompleteRaceUseCaseWithRatings'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { RaceResultsProvider } from '@core/identity/application/ports/RaceResultsProvider'; +import { RatingUpdateService } from '@core/identity/domain/services/RatingUpdateService'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; import type { StandingRepository } from '../../domain/repositories/StandingRepository'; -import { RatingUpdateService } from '@core/identity/domain/services/RatingUpdateService'; -import type { RaceResultsProvider } from '@core/identity/application/ports/RaceResultsProvider'; +import { + CompleteRaceUseCaseWithRatings, + type CompleteRaceWithRatingsInput, +} from './CompleteRaceUseCaseWithRatings'; describe('CompleteRaceUseCaseWithRatings', () => { let useCase: CompleteRaceUseCaseWithRatings; diff --git a/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.ts b/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.ts index 7df522329..313ed81b5 100644 --- a/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.ts +++ b/core/racing/application/use-cases/CompleteRaceUseCaseWithRatings.ts @@ -1,14 +1,14 @@ -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { StandingRepository } from '../../domain/repositories/StandingRepository'; -import { Result as RaceResult } from '../../domain/entities/result/Result'; -import { Standing } from '../../domain/entities/Standing'; -import { RaceResultGenerator } from '../utils/RaceResultGenerator'; +import type { RaceResultsProvider } from '@core/identity/application/ports/RaceResultsProvider'; import { RatingUpdateService } from '@core/identity/domain/services/RatingUpdateService'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { RaceResultsProvider } from '@core/identity/application/ports/RaceResultsProvider'; +import { Result as RaceResult } from '../../domain/entities/result/Result'; +import { Standing } from '../../domain/entities/Standing'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import type { StandingRepository } from '../../domain/repositories/StandingRepository'; +import { RaceResultGenerator } from '../utils/RaceResultGenerator'; export interface CompleteRaceWithRatingsInput { raceId: string; diff --git a/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.test.ts b/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.test.ts index 8bd8db195..31d51e174 100644 --- a/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.test.ts +++ b/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.test.ts @@ -1,14 +1,15 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Race } from '../../domain/entities/Race'; import { Season } from '../../domain/entities/season/Season'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { Logger } from 'vite'; import { - CreateLeagueSeasonScheduleRaceUseCase, - type CreateLeagueSeasonScheduleRaceErrorCode, + CreateLeagueSeasonScheduleRaceUseCase, + type CreateLeagueSeasonScheduleRaceErrorCode, } from './CreateLeagueSeasonScheduleRaceUseCase'; function createLogger(): Logger { diff --git a/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.ts b/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.ts index d0e6f7e2c..2737e2aff 100644 --- a/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.ts +++ b/core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase.ts @@ -4,8 +4,8 @@ import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorC import { Race } from '../../domain/entities/Race'; import type { Season } from '../../domain/entities/season/Season'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; export interface CreateLeagueSeasonScheduleRaceInput { leagueId: string; diff --git a/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.test.ts b/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.test.ts index 9e177a530..8379816e5 100644 --- a/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.test.ts +++ b/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.test.ts @@ -1,12 +1,12 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { CreateLeagueWithSeasonAndScoringUseCase, type CreateLeagueWithSeasonAndScoringCommand } from './CreateLeagueWithSeasonAndScoringUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { Logger } from '@core/shared/domain/Logger'; describe('CreateLeagueWithSeasonAndScoringUseCase', () => { let useCase: CreateLeagueWithSeasonAndScoringUseCase; diff --git a/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.ts b/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.ts index f23c15fbb..fd6189e7f 100644 --- a/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.ts +++ b/core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase.ts @@ -1,10 +1,13 @@ -import { League } from '../../domain/entities/League'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuidv4 } from 'uuid'; +import { League } from '../../domain/entities/League'; import { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; import { Season } from '../../domain/entities/season/Season'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import type { BonusRule } from '../../domain/types/BonusRule'; import type { ChampionshipConfig } from '../../domain/types/ChampionshipConfig'; import type { SessionType } from '../../domain/types/SessionType'; @@ -13,9 +16,6 @@ import { MIN_RANKED_LEAGUE_DRIVERS, } from '../../domain/value-objects/LeagueVisibility'; import { PointsTable } from '../../domain/value-objects/PointsTable'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; export type CreateLeagueWithSeasonAndScoringCommand = { name: string; diff --git a/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.test.ts b/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.test.ts index ae27424d6..d7387790c 100644 --- a/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.test.ts +++ b/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect, vi, type Mock, beforeEach } from 'vitest'; -import { Season } from '@core/racing/domain/entities/season/Season'; -import type { SeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; import { - CreateSeasonForLeagueUseCase, - type CreateSeasonForLeagueInput, - type LeagueConfigFormModel, + CreateSeasonForLeagueUseCase, + type CreateSeasonForLeagueInput, + type LeagueConfigFormModel, } from '@core/racing/application/use-cases/CreateSeasonForLeagueUseCase'; +import { Season } from '@core/racing/domain/entities/season/Season'; +import type { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; function createLeagueConfigFormModel(overrides?: Partial): LeagueConfigFormModel { return { diff --git a/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.ts b/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.ts index be5b07878..783d7f7ac 100644 --- a/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.ts +++ b/core/racing/application/use-cases/CreateSeasonForLeagueUseCase.ts @@ -1,21 +1,21 @@ -import { Season } from '../../domain/entities/season/Season'; -import { League } from '../../domain/entities/League'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { SeasonSchedule } from '../../domain/value-objects/SeasonSchedule'; -import { SeasonScoringConfig } from '../../domain/value-objects/SeasonScoringConfig'; -import { SeasonDropPolicy, type SeasonDropStrategy } from '../../domain/value-objects/SeasonDropPolicy'; -import { SeasonStewardingConfig } from '../../domain/value-objects/SeasonStewardingConfig'; -import type { StewardingDecisionMode } from '../../domain/entities/League'; -import { RaceTimeOfDay } from '../../domain/value-objects/RaceTimeOfDay'; -import { LeagueTimezone } from '../../domain/value-objects/LeagueTimezone'; -import { RecurrenceStrategyFactory } from '../../domain/value-objects/RecurrenceStrategy'; -import { WeekdaySet } from '../../domain/value-objects/WeekdaySet'; -import { MonthlyRecurrencePattern } from '../../domain/value-objects/MonthlyRecurrencePattern'; -import type { Weekday } from '../../domain/types/Weekday'; -import { v4 as uuidv4 } from 'uuid'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { v4 as uuidv4 } from 'uuid'; +import type { StewardingDecisionMode } from '../../domain/entities/League'; +import { League } from '../../domain/entities/League'; +import { Season } from '../../domain/entities/season/Season'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { Weekday } from '../../domain/types/Weekday'; +import { LeagueTimezone } from '../../domain/value-objects/LeagueTimezone'; +import { MonthlyRecurrencePattern } from '../../domain/value-objects/MonthlyRecurrencePattern'; +import { RaceTimeOfDay } from '../../domain/value-objects/RaceTimeOfDay'; +import { RecurrenceStrategyFactory } from '../../domain/value-objects/RecurrenceStrategy'; +import { SeasonDropPolicy, type SeasonDropStrategy } from '../../domain/value-objects/SeasonDropPolicy'; +import { SeasonSchedule } from '../../domain/value-objects/SeasonSchedule'; +import { SeasonScoringConfig } from '../../domain/value-objects/SeasonScoringConfig'; +import { SeasonStewardingConfig } from '../../domain/value-objects/SeasonStewardingConfig'; +import { WeekdaySet } from '../../domain/value-objects/WeekdaySet'; export type LeagueConfigFormModel = { basics?: { diff --git a/core/racing/application/use-cases/CreateSponsorUseCase.test.ts b/core/racing/application/use-cases/CreateSponsorUseCase.test.ts index c63689f40..1ba987462 100644 --- a/core/racing/application/use-cases/CreateSponsorUseCase.test.ts +++ b/core/racing/application/use-cases/CreateSponsorUseCase.test.ts @@ -1,5 +1,6 @@ import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; import { CreateSponsorUseCase, type CreateSponsorInput } from './CreateSponsorUseCase'; describe('CreateSponsorUseCase', () => { diff --git a/core/racing/application/use-cases/CreateSponsorUseCase.ts b/core/racing/application/use-cases/CreateSponsorUseCase.ts index 8136e9d20..8ac7682da 100644 --- a/core/racing/application/use-cases/CreateSponsorUseCase.ts +++ b/core/racing/application/use-cases/CreateSponsorUseCase.ts @@ -3,9 +3,9 @@ * * Creates a new sponsor. */ -import { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; +import { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuidv4 } from 'uuid'; import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; diff --git a/core/racing/application/use-cases/CreateTeamUseCase.test.ts b/core/racing/application/use-cases/CreateTeamUseCase.test.ts index 17c9e77a2..9639b46c4 100644 --- a/core/racing/application/use-cases/CreateTeamUseCase.test.ts +++ b/core/racing/application/use-cases/CreateTeamUseCase.test.ts @@ -1,11 +1,11 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { CreateTeamUseCase, type CreateTeamInput } from './CreateTeamUseCase'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; -import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import type { Logger } from '@core/shared/domain/Logger'; describe('CreateTeamUseCase', () => { let useCase: CreateTeamUseCase; diff --git a/core/racing/application/use-cases/CreateTeamUseCase.ts b/core/racing/application/use-cases/CreateTeamUseCase.ts index 6457ccaeb..04c92e3bb 100644 --- a/core/racing/application/use-cases/CreateTeamUseCase.ts +++ b/core/racing/application/use-cases/CreateTeamUseCase.ts @@ -3,18 +3,18 @@ * * Creates a new team. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { v4 as uuidv4 } from 'uuid'; import { Team } from '../../domain/entities/Team'; +import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; import type { TeamMembership, TeamMembershipStatus, TeamRole, } from '../../domain/types/TeamMembership'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; -import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; export interface CreateTeamInput { name: string; diff --git a/core/racing/application/use-cases/DashboardOverviewUseCase.test.ts b/core/racing/application/use-cases/DashboardOverviewUseCase.test.ts index 660470a25..7cfdb0ea2 100644 --- a/core/racing/application/use-cases/DashboardOverviewUseCase.test.ts +++ b/core/racing/application/use-cases/DashboardOverviewUseCase.test.ts @@ -1,22 +1,22 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - DashboardOverviewUseCase, - type DashboardOverviewInput, - type DashboardOverviewResult, + DashboardOverviewUseCase, + type DashboardOverviewInput, + type DashboardOverviewResult, } from '@core/racing/application/use-cases/DashboardOverviewUseCase'; import { Driver } from '@core/racing/domain/entities/Driver'; -import { Race } from '@core/racing/domain/entities/Race'; import { League } from '@core/racing/domain/entities/League'; -import { Standing } from '@core/racing/domain/entities/Standing'; import { LeagueMembership } from '@core/racing/domain/entities/LeagueMembership'; +import { Race } from '@core/racing/domain/entities/Race'; import { Result as RaceResult } from '@core/racing/domain/entities/result/Result'; +import { Standing } from '@core/racing/domain/entities/Standing'; -import type { FeedItem } from '@core/social/domain/types/FeedItem'; -import { Result as UseCaseResult } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { JoinRequest } from '@core/racing/domain/entities/JoinRequest'; import { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'; +import { Result as UseCaseResult } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { FeedItem } from '@core/social/domain/types/FeedItem'; describe('DashboardOverviewUseCase', () => { it('partitions upcoming races into myUpcomingRaces and otherUpcomingRaces and selects nextRace from myUpcomingRaces', async () => { diff --git a/core/racing/application/use-cases/DashboardOverviewUseCase.ts b/core/racing/application/use-cases/DashboardOverviewUseCase.ts index 9a5b88c4c..da8fbf3aa 100644 --- a/core/racing/application/use-cases/DashboardOverviewUseCase.ts +++ b/core/racing/application/use-cases/DashboardOverviewUseCase.ts @@ -6,6 +6,7 @@ import type { FeedItem } from '@core/social/domain/types/FeedItem'; import { Driver } from '../../domain/entities/Driver'; import { League } from '../../domain/entities/League'; import { Race } from '../../domain/entities/Race'; +import type { Result as RaceResult } from '../../domain/entities/result/Result'; import { Standing } from '../../domain/entities/Standing'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; @@ -14,7 +15,6 @@ import type { RaceRegistrationRepository } from '../../domain/repositories/RaceR import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; import type { StandingRepository } from '../../domain/repositories/StandingRepository'; -import type { Result as RaceResult } from '../../domain/entities/result/Result'; export interface DashboardOverviewInput { driverId: string; diff --git a/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.test.ts b/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.test.ts index 8c2bfffb4..96fd4f1aa 100644 --- a/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.test.ts +++ b/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.test.ts @@ -1,14 +1,15 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Race } from '../../domain/entities/Race'; import { Season } from '../../domain/entities/season/Season'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { Logger } from 'vite'; import { - DeleteLeagueSeasonScheduleRaceUseCase, - type DeleteLeagueSeasonScheduleRaceErrorCode, + DeleteLeagueSeasonScheduleRaceUseCase, + type DeleteLeagueSeasonScheduleRaceErrorCode, } from './DeleteLeagueSeasonScheduleRaceUseCase'; function createLogger(): Logger { diff --git a/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.ts b/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.ts index f7c2fc6d7..9baa03af9 100644 --- a/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.ts +++ b/core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase.ts @@ -1,8 +1,8 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; export interface DeleteLeagueSeasonScheduleRaceInput { leagueId: string; diff --git a/core/racing/application/use-cases/FileProtestUseCase.test.ts b/core/racing/application/use-cases/FileProtestUseCase.test.ts index c93f33682..b04e85d40 100644 --- a/core/racing/application/use-cases/FileProtestUseCase.test.ts +++ b/core/racing/application/use-cases/FileProtestUseCase.test.ts @@ -1,10 +1,10 @@ import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { Protest } from '../../domain/entities/Protest'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import { FileProtestUseCase, type FileProtestErrorCode, type FileProtestInput } from './FileProtestUseCase'; -import { Protest } from '../../domain/entities/Protest'; describe('FileProtestUseCase', () => { let mockProtestRepo: { diff --git a/core/racing/application/use-cases/FileProtestUseCase.ts b/core/racing/application/use-cases/FileProtestUseCase.ts index beba1466b..3c67c2ea6 100644 --- a/core/racing/application/use-cases/FileProtestUseCase.ts +++ b/core/racing/application/use-cases/FileProtestUseCase.ts @@ -4,13 +4,13 @@ * Allows a driver to file a protest against another driver for an incident during a race. */ -import { Protest } from '../../domain/entities/Protest'; -import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { randomUUID } from 'crypto'; +import { Protest } from '../../domain/entities/Protest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; export type FileProtestErrorCode = 'RACE_NOT_FOUND' | 'SELF_PROTEST' | 'NOT_MEMBER' | 'REPOSITORY_ERROR'; diff --git a/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.test.ts b/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.test.ts index 2ff78645f..de73b9acb 100644 --- a/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.test.ts +++ b/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.test.ts @@ -5,8 +5,8 @@ import type { LeagueRepository } from '../../domain/repositories/LeagueRepositor import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { - GetAllLeaguesWithCapacityAndScoringUseCase, - type GetAllLeaguesWithCapacityAndScoringInput, + GetAllLeaguesWithCapacityAndScoringUseCase, + type GetAllLeaguesWithCapacityAndScoringInput, } from './GetAllLeaguesWithCapacityAndScoringUseCase'; describe('GetAllLeaguesWithCapacityAndScoringUseCase', () => { diff --git a/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.ts b/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.ts index fb7d48a91..2787cb059 100644 --- a/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.ts +++ b/core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase.ts @@ -1,15 +1,15 @@ -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { GameRepository } from '../../domain/repositories/GameRepository'; -import type { League } from '../../domain/entities/League'; -import type { Season } from '../../domain/entities/season/Season'; -import type { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; -import type { Game } from '../../domain/entities/Game'; -import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Game } from '../../domain/entities/Game'; +import type { League } from '../../domain/entities/League'; +import type { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; +import type { Season } from '../../domain/entities/season/Season'; +import type { GameRepository } from '../../domain/repositories/GameRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; export type GetAllLeaguesWithCapacityAndScoringInput = {}; diff --git a/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.test.ts b/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.test.ts index 8bc3b41d2..3de49db9e 100644 --- a/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.test.ts +++ b/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.test.ts @@ -2,8 +2,8 @@ import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { - GetAllLeaguesWithCapacityUseCase, - type GetAllLeaguesWithCapacityInput, + GetAllLeaguesWithCapacityUseCase, + type GetAllLeaguesWithCapacityInput, } from './GetAllLeaguesWithCapacityUseCase'; describe('GetAllLeaguesWithCapacityUseCase', () => { diff --git a/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.ts b/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.ts index eeb6f21b6..a4ad6b014 100644 --- a/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.ts +++ b/core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase.ts @@ -1,8 +1,8 @@ -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { League } from '../../domain/entities/League'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { League } from '../../domain/entities/League'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; export type GetAllLeaguesWithCapacityInput = {}; diff --git a/core/racing/application/use-cases/GetAllRacesPageDataUseCase.test.ts b/core/racing/application/use-cases/GetAllRacesPageDataUseCase.test.ts index 722e8b0fb..74f300338 100644 --- a/core/racing/application/use-cases/GetAllRacesPageDataUseCase.test.ts +++ b/core/racing/application/use-cases/GetAllRacesPageDataUseCase.test.ts @@ -7,8 +7,8 @@ import { type GetAllRacesPageDataInput } from './GetAllRacesPageDataUseCase'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; describe('GetAllRacesPageDataUseCase', () => { const mockRaceFindAll = vi.fn(); diff --git a/core/racing/application/use-cases/GetAllRacesPageDataUseCase.ts b/core/racing/application/use-cases/GetAllRacesPageDataUseCase.ts index 8639a6e12..4eb0b5d09 100644 --- a/core/racing/application/use-cases/GetAllRacesPageDataUseCase.ts +++ b/core/racing/application/use-cases/GetAllRacesPageDataUseCase.ts @@ -1,10 +1,10 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Race, RaceStatusValue } from '../../domain/entities/Race'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { Logger } from '@core/shared/domain/Logger'; import type { League } from '../../domain/entities/League'; +import type { Race, RaceStatusValue } from '../../domain/entities/Race'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; export type GetAllRacesPageDataInput = {}; diff --git a/core/racing/application/use-cases/GetAllRacesUseCase.ts b/core/racing/application/use-cases/GetAllRacesUseCase.ts index d3fd41c13..00c31ffd3 100644 --- a/core/racing/application/use-cases/GetAllRacesUseCase.ts +++ b/core/racing/application/use-cases/GetAllRacesUseCase.ts @@ -1,10 +1,10 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { League } from '../../domain/entities/League'; import type { Race } from '../../domain/entities/Race'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { Logger } from '@core/shared/domain/Logger'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; export type GetAllRacesInput = {}; diff --git a/core/racing/application/use-cases/GetAllTeamsUseCase.ts b/core/racing/application/use-cases/GetAllTeamsUseCase.ts index ed4f98a9b..4b64b7e45 100644 --- a/core/racing/application/use-cases/GetAllTeamsUseCase.ts +++ b/core/racing/application/use-cases/GetAllTeamsUseCase.ts @@ -1,9 +1,9 @@ -import { Team } from '../../domain/entities/Team'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { Team } from '../../domain/entities/Team'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { TeamStatsRepository } from '../../domain/repositories/TeamStatsRepository'; export interface GetAllTeamsInput {} diff --git a/core/racing/application/use-cases/GetDriverLiveriesUseCase.test.ts b/core/racing/application/use-cases/GetDriverLiveriesUseCase.test.ts index 3bedb3078..0d0de3af5 100644 --- a/core/racing/application/use-cases/GetDriverLiveriesUseCase.test.ts +++ b/core/racing/application/use-cases/GetDriverLiveriesUseCase.test.ts @@ -1,6 +1,7 @@ import type { Logger } from '@core/shared/domain/Logger'; import { describe, expect, it, vi } from 'vitest'; import type { DriverLivery } from '../../domain/entities/DriverLivery'; +import { LiveryRepository } from '../../domain/repositories/LiveryRepository'; import { GetDriverLiveriesUseCase, type GetDriverLiveriesInput } from './GetDriverLiveriesUseCase'; describe('GetDriverLiveriesUseCase', () => { diff --git a/core/racing/application/use-cases/GetDriverLiveriesUseCase.ts b/core/racing/application/use-cases/GetDriverLiveriesUseCase.ts index a5fadc175..ea903bdbf 100644 --- a/core/racing/application/use-cases/GetDriverLiveriesUseCase.ts +++ b/core/racing/application/use-cases/GetDriverLiveriesUseCase.ts @@ -4,11 +4,11 @@ * Retrieves all liveries for a specific driver. */ -import { DriverLivery } from '../../domain/entities/DriverLivery'; import { UseCase } from '@core/shared/application/UseCase'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { DriverLivery } from '../../domain/entities/DriverLivery'; import { LiveryRepository } from '../../domain/repositories/LiveryRepository'; export interface GetDriverLiveriesInput { diff --git a/core/racing/application/use-cases/GetDriverTeamUseCase.test.ts b/core/racing/application/use-cases/GetDriverTeamUseCase.test.ts index ad70ee261..ba50ac0e7 100644 --- a/core/racing/application/use-cases/GetDriverTeamUseCase.test.ts +++ b/core/racing/application/use-cases/GetDriverTeamUseCase.test.ts @@ -1,8 +1,8 @@ import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, vi } from 'vitest'; -import { GetDriverTeamUseCase, type GetDriverTeamInput } from './GetDriverTeamUseCase'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { GetDriverTeamUseCase, type GetDriverTeamInput } from './GetDriverTeamUseCase'; describe('GetDriverTeamUseCase', () => { let mockTeamRepo: TeamRepository; diff --git a/core/racing/application/use-cases/GetDriverTeamUseCase.ts b/core/racing/application/use-cases/GetDriverTeamUseCase.ts index bc6cd20fe..011b3a15c 100644 --- a/core/racing/application/use-cases/GetDriverTeamUseCase.ts +++ b/core/racing/application/use-cases/GetDriverTeamUseCase.ts @@ -1,10 +1,10 @@ -import { TeamMembership } from '../../domain/types/TeamMembership'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Team } from '../../domain/entities/Team'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { TeamMembership } from '../../domain/types/TeamMembership'; export interface GetDriverTeamInput { driverId: string; diff --git a/core/racing/application/use-cases/GetDriversLeaderboardUseCase.test.ts b/core/racing/application/use-cases/GetDriversLeaderboardUseCase.test.ts index 46f0e9874..b413d4a94 100644 --- a/core/racing/application/use-cases/GetDriversLeaderboardUseCase.test.ts +++ b/core/racing/application/use-cases/GetDriversLeaderboardUseCase.test.ts @@ -1,9 +1,12 @@ import type { Logger } from '@core/shared/domain/Logger'; import { describe, expect, it, vi } from 'vitest'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { DriverStatsUseCase } from './DriverStatsUseCase'; import { GetDriversLeaderboardUseCase, type GetDriversLeaderboardInput } from './GetDriversLeaderboardUseCase'; +import { RankingUseCase } from './RankingUseCase'; describe('GetDriversLeaderboardUseCase', () => { const mockDriverFindAll = vi.fn(); diff --git a/core/racing/application/use-cases/GetDriversLeaderboardUseCase.ts b/core/racing/application/use-cases/GetDriversLeaderboardUseCase.ts index 205a689dc..bedb277df 100644 --- a/core/racing/application/use-cases/GetDriversLeaderboardUseCase.ts +++ b/core/racing/application/use-cases/GetDriversLeaderboardUseCase.ts @@ -1,14 +1,14 @@ -import type { Logger } from '@core/shared/domain/Logger'; +import { MediaReference } from '@core/domain/media/MediaReference'; import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Driver } from '../../domain/entities/Driver'; import type { Team } from '../../domain/entities/Team'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { SkillLevelService, type SkillLevel } from '../../domain/services/SkillLevelService'; import type { DriverStats, DriverStatsUseCase } from './DriverStatsUseCase'; import type { RankingUseCase } from './RankingUseCase'; -import { SkillLevelService, type SkillLevel } from '../../domain/services/SkillLevelService'; -import { MediaReference } from '@core/domain/media/MediaReference'; export type GetDriversLeaderboardInput = { leagueId?: string; diff --git a/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.test.ts b/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.test.ts index 84490804d..177666f02 100644 --- a/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.test.ts +++ b/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.test.ts @@ -1,11 +1,11 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { SponsorshipPricingRepository } from '../../domain/repositories/SponsorshipPricingRepository'; import { GetEntitySponsorshipPricingUseCase, type GetEntitySponsorshipPricingInput } from './GetEntitySponsorshipPricingUseCase'; -import type { SponsorshipPricingRepository } from '../../domain/repositories/SponsorshipPricingRepository'; describe('GetEntitySponsorshipPricingUseCase', () => { let mockSponsorshipPricingRepo: SponsorshipPricingRepository; diff --git a/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.ts b/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.ts index 9da2ff788..e5bca261d 100644 --- a/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.ts +++ b/core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase.ts @@ -5,11 +5,11 @@ * Used by sponsors to see available slots and prices. */ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { SponsorableEntityType } from '../../domain/entities/SponsorshipRequest'; import { SponsorshipPricingRepository } from '../../domain/repositories/SponsorshipPricingRepository'; -import type { Logger } from '@core/shared/domain/Logger'; export type SponsorshipEntityType = SponsorableEntityType; diff --git a/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.test.ts index d1f10bbf4..aa1b40802 100644 --- a/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.test.ts @@ -1,13 +1,14 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { League } from '../../domain/entities/League'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { GetLeagueAdminPermissionsUseCase, type GetLeagueAdminPermissionsErrorCode, type GetLeagueAdminPermissionsInput } from './GetLeagueAdminPermissionsUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; describe('GetLeagueAdminPermissionsUseCase', () => { let mockLeagueRepo: LeagueRepository; diff --git a/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.ts b/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.ts index 315ff2c6e..2fe084e8d 100644 --- a/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase.ts @@ -2,8 +2,8 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { League } from '../../domain/entities/League'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; export interface GetLeagueAdminPermissionsInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueAdminUseCase.test.ts b/core/racing/application/use-cases/GetLeagueAdminUseCase.test.ts index df58e2b54..442127eda 100644 --- a/core/racing/application/use-cases/GetLeagueAdminUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueAdminUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueAdminUseCase, - type GetLeagueAdminInput, - type GetLeagueAdminErrorCode, -} from './GetLeagueAdminUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + GetLeagueAdminUseCase, + type GetLeagueAdminErrorCode, + type GetLeagueAdminInput, +} from './GetLeagueAdminUseCase'; describe('GetLeagueAdminUseCase', () => { let mockLeagueRepo: { diff --git a/core/racing/application/use-cases/GetLeagueAdminUseCase.ts b/core/racing/application/use-cases/GetLeagueAdminUseCase.ts index 7dc7164d6..ace7636d0 100644 --- a/core/racing/application/use-cases/GetLeagueAdminUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueAdminUseCase.ts @@ -1,7 +1,7 @@ -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { League } from '../../domain/entities/League'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; export type GetLeagueAdminInput = { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueDriverSeasonStatsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueDriverSeasonStatsUseCase.test.ts index 6e4b3a268..eaa179bd3 100644 --- a/core/racing/application/use-cases/GetLeagueDriverSeasonStatsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueDriverSeasonStatsUseCase.test.ts @@ -1,16 +1,16 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueDriverSeasonStatsUseCase, - type GetLeagueDriverSeasonStatsErrorCode, - type GetLeagueDriverSeasonStatsInput, -} from './GetLeagueDriverSeasonStatsUseCase'; -import type { StandingRepository } from '../../domain/repositories/StandingRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import type { StandingRepository } from '../../domain/repositories/StandingRepository'; import type { DriverRatingPort } from '../ports/DriverRatingPort'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { + GetLeagueDriverSeasonStatsUseCase, + type GetLeagueDriverSeasonStatsErrorCode, + type GetLeagueDriverSeasonStatsInput, +} from './GetLeagueDriverSeasonStatsUseCase'; describe('GetLeagueDriverSeasonStatsUseCase', () => { const mockStandingFindByLeagueId = vi.fn(); diff --git a/core/racing/application/use-cases/GetLeagueFullConfigUseCase.test.ts b/core/racing/application/use-cases/GetLeagueFullConfigUseCase.test.ts index 1cf3560b8..a780fe0f7 100644 --- a/core/racing/application/use-cases/GetLeagueFullConfigUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueFullConfigUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, vi, beforeEach, type Mock } from 'vitest'; -import { - GetLeagueFullConfigUseCase, - type GetLeagueFullConfigInput, - type GetLeagueFullConfigErrorCode, -} from './GetLeagueFullConfigUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { GameRepository } from '../../domain/repositories/GameRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { GameRepository } from '../../domain/repositories/GameRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { + GetLeagueFullConfigUseCase, + type GetLeagueFullConfigErrorCode, + type GetLeagueFullConfigInput, +} from './GetLeagueFullConfigUseCase'; describe('GetLeagueFullConfigUseCase', () => { let useCase: GetLeagueFullConfigUseCase; diff --git a/core/racing/application/use-cases/GetLeagueFullConfigUseCase.ts b/core/racing/application/use-cases/GetLeagueFullConfigUseCase.ts index 39b217430..687910775 100644 --- a/core/racing/application/use-cases/GetLeagueFullConfigUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueFullConfigUseCase.ts @@ -1,9 +1,9 @@ -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { GameRepository } from '../../domain/repositories/GameRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { GameRepository } from '../../domain/repositories/GameRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; export type GetLeagueFullConfigInput = { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueJoinRequestsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueJoinRequestsUseCase.test.ts index 0d8f56f04..c00aa2180 100644 --- a/core/racing/application/use-cases/GetLeagueJoinRequestsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueJoinRequestsUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueJoinRequestsUseCase, - type GetLeagueJoinRequestsInput, - type GetLeagueJoinRequestsErrorCode, -} from './GetLeagueJoinRequestsUseCase'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import { DriverRepository } from '../../domain/repositories/DriverRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { Driver } from '../../domain/entities/Driver'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Driver } from '../../domain/entities/Driver'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + GetLeagueJoinRequestsUseCase, + type GetLeagueJoinRequestsErrorCode, + type GetLeagueJoinRequestsInput, +} from './GetLeagueJoinRequestsUseCase'; describe('GetLeagueJoinRequestsUseCase', () => { let useCase: GetLeagueJoinRequestsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueMembershipsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueMembershipsUseCase.test.ts index 45c7159fb..27815097b 100644 --- a/core/racing/application/use-cases/GetLeagueMembershipsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueMembershipsUseCase.test.ts @@ -1,16 +1,16 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueMembershipsUseCase, - type GetLeagueMembershipsInput, - type GetLeagueMembershipsErrorCode, -} from './GetLeagueMembershipsUseCase'; -import { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; import { League } from '../../domain/entities/League'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueMembership } from '../../domain/entities/LeagueMembership'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + GetLeagueMembershipsUseCase, + type GetLeagueMembershipsErrorCode, + type GetLeagueMembershipsInput, +} from './GetLeagueMembershipsUseCase'; describe('GetLeagueMembershipsUseCase', () => { let useCase: GetLeagueMembershipsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueMembershipsUseCase.ts b/core/racing/application/use-cases/GetLeagueMembershipsUseCase.ts index 6f1ab70f5..7cea6a9ce 100644 --- a/core/racing/application/use-cases/GetLeagueMembershipsUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueMembershipsUseCase.ts @@ -1,11 +1,11 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembership } from '../../domain/entities/LeagueMembership'; import type { Driver } from '../../domain/entities/Driver'; import type { League } from '../../domain/entities/League'; +import type { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; export interface GetLeagueMembershipsInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.test.ts b/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.test.ts index c85223c51..94d73eec7 100644 --- a/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.test.ts @@ -1,16 +1,16 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueOwnerSummaryUseCase, - type GetLeagueOwnerSummaryInput, - type GetLeagueOwnerSummaryErrorCode, -} from './GetLeagueOwnerSummaryUseCase'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; import { League } from '../../domain/entities/League'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { StandingRepository } from '../../domain/repositories/StandingRepository'; +import { + GetLeagueOwnerSummaryUseCase, + type GetLeagueOwnerSummaryErrorCode, + type GetLeagueOwnerSummaryInput, +} from './GetLeagueOwnerSummaryUseCase'; describe('GetLeagueOwnerSummaryUseCase', () => { let useCase: GetLeagueOwnerSummaryUseCase; diff --git a/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.ts b/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.ts index 3a818c60c..9e976f5ca 100644 --- a/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase.ts @@ -1,11 +1,11 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { Driver } from '../../domain/entities/Driver'; +import type { League } from '../../domain/entities/League'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { StandingRepository } from '../../domain/repositories/StandingRepository'; -import type { League } from '../../domain/entities/League'; -import type { Driver } from '../../domain/entities/Driver'; export interface GetLeagueOwnerSummaryInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueProtestsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueProtestsUseCase.test.ts index 0f85cf495..4600de3c9 100644 --- a/core/racing/application/use-cases/GetLeagueProtestsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueProtestsUseCase.test.ts @@ -1,18 +1,18 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetLeagueProtestsUseCase, - GetLeagueProtestsInput, - GetLeagueProtestsErrorCode, -} from './GetLeagueProtestsUseCase'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { ProtestRepository } from '../../domain/repositories/ProtestRepository'; -import { DriverRepository } from '../../domain/repositories/DriverRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { Race } from '../../domain/entities/Race'; -import { Protest } from '../../domain/entities/Protest'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; import { League } from '../../domain/entities/League'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Protest } from '../../domain/entities/Protest'; +import { Race } from '../../domain/entities/Race'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { ProtestRepository } from '../../domain/repositories/ProtestRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { + GetLeagueProtestsErrorCode, + GetLeagueProtestsInput, + GetLeagueProtestsUseCase, +} from './GetLeagueProtestsUseCase'; describe('GetLeagueProtestsUseCase', () => { let useCase: GetLeagueProtestsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueProtestsUseCase.ts b/core/racing/application/use-cases/GetLeagueProtestsUseCase.ts index 8425fa9f0..6ef74c424 100644 --- a/core/racing/application/use-cases/GetLeagueProtestsUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueProtestsUseCase.ts @@ -1,13 +1,13 @@ -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result } from '@core/shared/domain/Result'; -import type { Race } from '../../domain/entities/Race'; -import type { Protest } from '../../domain/entities/Protest'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Driver } from '../../domain/entities/Driver'; import type { League } from '../../domain/entities/League'; +import type { Protest } from '../../domain/entities/Protest'; +import type { Race } from '../../domain/entities/Race'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; export interface GetLeagueProtestsInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase.test.ts index e454c1aeb..a653ea79c 100644 --- a/core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueRosterJoinRequestsUseCase, - type GetLeagueRosterJoinRequestsInput, - type GetLeagueRosterJoinRequestsErrorCode, -} from './GetLeagueRosterJoinRequestsUseCase'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + GetLeagueRosterJoinRequestsUseCase, + type GetLeagueRosterJoinRequestsErrorCode, + type GetLeagueRosterJoinRequestsInput, +} from './GetLeagueRosterJoinRequestsUseCase'; describe('GetLeagueRosterJoinRequestsUseCase', () => { let useCase: GetLeagueRosterJoinRequestsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueRosterMembersUseCase.test.ts b/core/racing/application/use-cases/GetLeagueRosterMembersUseCase.test.ts index 1c1f48cc0..b0e63b8c2 100644 --- a/core/racing/application/use-cases/GetLeagueRosterMembersUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueRosterMembersUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueRosterMembersUseCase, - type GetLeagueRosterMembersInput, - type GetLeagueRosterMembersErrorCode, -} from './GetLeagueRosterMembersUseCase'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueMembership } from '../../domain/entities/LeagueMembership'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + GetLeagueRosterMembersUseCase, + type GetLeagueRosterMembersErrorCode, + type GetLeagueRosterMembersInput, +} from './GetLeagueRosterMembersUseCase'; describe('GetLeagueRosterMembersUseCase', () => { let useCase: GetLeagueRosterMembersUseCase; diff --git a/core/racing/application/use-cases/GetLeagueScheduleUseCase.test.ts b/core/racing/application/use-cases/GetLeagueScheduleUseCase.test.ts index a84cdb31f..df26a4bca 100644 --- a/core/racing/application/use-cases/GetLeagueScheduleUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueScheduleUseCase.test.ts @@ -1,16 +1,16 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueScheduleUseCase, - type GetLeagueScheduleInput, - type GetLeagueScheduleErrorCode, -} from './GetLeagueScheduleUseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { League } from '../../domain/entities/League'; import { Race } from '../../domain/entities/Race'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { Logger } from '@core/shared/domain/Logger'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { + GetLeagueScheduleUseCase, + type GetLeagueScheduleErrorCode, + type GetLeagueScheduleInput, +} from './GetLeagueScheduleUseCase'; describe('GetLeagueScheduleUseCase', () => { let useCase: GetLeagueScheduleUseCase; diff --git a/core/racing/application/use-cases/GetLeagueScheduleUseCase.ts b/core/racing/application/use-cases/GetLeagueScheduleUseCase.ts index 31ca161ef..611ee0567 100644 --- a/core/racing/application/use-cases/GetLeagueScheduleUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueScheduleUseCase.ts @@ -1,4 +1,3 @@ -import { SeasonScheduleGenerator } from '../../domain/services/SeasonScheduleGenerator'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; @@ -6,8 +5,9 @@ import type { League } from '../../domain/entities/League'; import type { Race } from '../../domain/entities/Race'; import type { Season } from '../../domain/entities/season/Season'; import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { SeasonScheduleGenerator } from '../../domain/services/SeasonScheduleGenerator'; export type GetLeagueScheduleErrorCode = | 'LEAGUE_NOT_FOUND' diff --git a/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.test.ts b/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.test.ts index d691c1be4..384a5e55c 100644 --- a/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { GetLeagueScoringConfigUseCase } from './GetLeagueScoringConfigUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { GameRepository } from '../../domain/repositories/GameRepository'; -import type { League } from '../../domain/entities/League'; -import type { Season } from '../../domain/entities/season/Season'; -import type { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { Game } from '../../domain/entities/Game'; +import type { League } from '../../domain/entities/League'; +import type { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; +import type { Season } from '../../domain/entities/season/Season'; +import type { GameRepository } from '../../domain/repositories/GameRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; +import { GetLeagueScoringConfigUseCase } from './GetLeagueScoringConfigUseCase'; describe('GetLeagueScoringConfigUseCase', () => { let useCase: GetLeagueScoringConfigUseCase; diff --git a/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.ts b/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.ts index 3495c9915..66472ad16 100644 --- a/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueScoringConfigUseCase.ts @@ -1,13 +1,13 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { GameRepository } from '../../domain/repositories/GameRepository'; -import type { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; -import type { League } from '../../domain/entities/League'; -import type { Season } from '../../domain/entities/season/Season'; import type { Game } from '../../domain/entities/Game'; +import type { League } from '../../domain/entities/League'; +import type { LeagueScoringConfig } from '../../domain/entities/LeagueScoringConfig'; +import type { Season } from '../../domain/entities/season/Season'; +import type { GameRepository } from '../../domain/repositories/GameRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; export interface GetLeagueScoringConfigInput { diff --git a/core/racing/application/use-cases/GetLeagueSeasonsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueSeasonsUseCase.test.ts index 70f737a05..b4564e0ca 100644 --- a/core/racing/application/use-cases/GetLeagueSeasonsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueSeasonsUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueSeasonsUseCase, - type GetLeagueSeasonsInput, - type GetLeagueSeasonsErrorCode, -} from './GetLeagueSeasonsUseCase'; -import { Season } from '../../domain/entities/season/Season'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { League } from '../../domain/entities/League'; +import { Season } from '../../domain/entities/season/Season'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { + GetLeagueSeasonsUseCase, + type GetLeagueSeasonsErrorCode, + type GetLeagueSeasonsInput, +} from './GetLeagueSeasonsUseCase'; describe('GetLeagueSeasonsUseCase', () => { let useCase: GetLeagueSeasonsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueSeasonsUseCase.ts b/core/racing/application/use-cases/GetLeagueSeasonsUseCase.ts index b92aae87b..cade38fdc 100644 --- a/core/racing/application/use-cases/GetLeagueSeasonsUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueSeasonsUseCase.ts @@ -1,8 +1,8 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Season } from '../../domain/entities/season/Season'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { Season } from '../../domain/entities/season/Season'; export interface GetLeagueSeasonsInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueStandingsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueStandingsUseCase.test.ts index 3a3d07d01..56a7e1286 100644 --- a/core/racing/application/use-cases/GetLeagueStandingsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueStandingsUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { - GetLeagueStandingsUseCase, - type GetLeagueStandingsInput, - type GetLeagueStandingsErrorCode, -} from './GetLeagueStandingsUseCase'; -import { Standing } from '../../domain/entities/Standing'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; -import type { StandingRepository } from '../../domain/repositories/StandingRepository'; +import { Standing } from '../../domain/entities/Standing'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { StandingRepository } from '../../domain/repositories/StandingRepository'; +import { + GetLeagueStandingsUseCase, + type GetLeagueStandingsErrorCode, + type GetLeagueStandingsInput, +} from './GetLeagueStandingsUseCase'; describe('GetLeagueStandingsUseCase', () => { let useCase: GetLeagueStandingsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueStandingsUseCase.ts b/core/racing/application/use-cases/GetLeagueStandingsUseCase.ts index 2a8b3c5a6..8d99a4a00 100644 --- a/core/racing/application/use-cases/GetLeagueStandingsUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueStandingsUseCase.ts @@ -1,8 +1,8 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Driver } from '../../domain/entities/Driver'; -import type { StandingRepository } from '../../domain/repositories/StandingRepository'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { StandingRepository } from '../../domain/repositories/StandingRepository'; export type GetLeagueStandingsErrorCode = 'REPOSITORY_ERROR'; diff --git a/core/racing/application/use-cases/GetLeagueStatsUseCase.test.ts b/core/racing/application/use-cases/GetLeagueStatsUseCase.test.ts index dde5d7be8..b3d9cdf47 100644 --- a/core/racing/application/use-cases/GetLeagueStatsUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueStatsUseCase.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueStatsUseCase, - type GetLeagueStatsInput, - type GetLeagueStatsErrorCode, -} from './GetLeagueStatsUseCase'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { + GetLeagueStatsUseCase, + type GetLeagueStatsErrorCode, + type GetLeagueStatsInput, +} from './GetLeagueStatsUseCase'; describe('GetLeagueStatsUseCase', () => { let useCase: GetLeagueStatsUseCase; diff --git a/core/racing/application/use-cases/GetLeagueStatsUseCase.ts b/core/racing/application/use-cases/GetLeagueStatsUseCase.ts index 667f569cb..e9eb056e1 100644 --- a/core/racing/application/use-cases/GetLeagueStatsUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueStatsUseCase.ts @@ -1,7 +1,7 @@ -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; export interface GetLeagueStatsInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetLeagueWalletUseCase.test.ts b/core/racing/application/use-cases/GetLeagueWalletUseCase.test.ts index 28d1e7552..85f108d75 100644 --- a/core/racing/application/use-cases/GetLeagueWalletUseCase.test.ts +++ b/core/racing/application/use-cases/GetLeagueWalletUseCase.test.ts @@ -1,18 +1,18 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetLeagueWalletUseCase, - type GetLeagueWalletInput, - type GetLeagueWalletErrorCode, -} from './GetLeagueWalletUseCase'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { LeagueWallet } from '../../domain/entities/league-wallet/LeagueWallet'; +import { LeagueWalletId } from '../../domain/entities/league-wallet/LeagueWalletId'; +import { Transaction } from '../../domain/entities/league-wallet/Transaction'; +import { TransactionId } from '../../domain/entities/league-wallet/TransactionId'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { LeagueWalletRepository } from '../../domain/repositories/LeagueWalletRepository'; import type { TransactionRepository } from '../../domain/repositories/TransactionRepository'; -import { LeagueWallet } from '../../domain/entities/league-wallet/LeagueWallet'; import { Money } from '../../domain/value-objects/Money'; -import { Transaction } from '../../domain/entities/league-wallet/Transaction'; -import { TransactionId } from '../../domain/entities/league-wallet/TransactionId'; -import { LeagueWalletId } from '../../domain/entities/league-wallet/LeagueWalletId'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { + GetLeagueWalletUseCase, + type GetLeagueWalletErrorCode, + type GetLeagueWalletInput, +} from './GetLeagueWalletUseCase'; describe('GetLeagueWalletUseCase', () => { let leagueRepository: { diff --git a/core/racing/application/use-cases/GetLeagueWalletUseCase.ts b/core/racing/application/use-cases/GetLeagueWalletUseCase.ts index b35ba8a61..b83acd5e3 100644 --- a/core/racing/application/use-cases/GetLeagueWalletUseCase.ts +++ b/core/racing/application/use-cases/GetLeagueWalletUseCase.ts @@ -1,10 +1,10 @@ +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueWallet } from '../../domain/entities/league-wallet/LeagueWallet'; +import type { Transaction } from '../../domain/entities/league-wallet/Transaction'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { LeagueWalletRepository } from '../../domain/repositories/LeagueWalletRepository'; import type { TransactionRepository } from '../../domain/repositories/TransactionRepository'; -import type { Transaction } from '../../domain/entities/league-wallet/Transaction'; -import type { LeagueWallet } from '../../domain/entities/league-wallet/LeagueWallet'; -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Money } from '../../domain/value-objects/Money'; export type GetLeagueWalletErrorCode = diff --git a/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.test.ts b/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.test.ts index 669829215..354abb4b4 100644 --- a/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.test.ts +++ b/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetPendingSponsorshipRequestsUseCase, - type GetPendingSponsorshipRequestsInput, - type GetPendingSponsorshipRequestsErrorCode, -} from './GetPendingSponsorshipRequestsUseCase'; -import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; -import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import { SponsorshipRequest } from '../../domain/entities/SponsorshipRequest'; import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; import { Money } from '../../domain/value-objects/Money'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { + GetPendingSponsorshipRequestsUseCase, + type GetPendingSponsorshipRequestsErrorCode, + type GetPendingSponsorshipRequestsInput, +} from './GetPendingSponsorshipRequestsUseCase'; describe('GetPendingSponsorshipRequestsUseCase', () => { let useCase: GetPendingSponsorshipRequestsUseCase; diff --git a/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.ts b/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.ts index e7e582e85..11b66efb8 100644 --- a/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.ts +++ b/core/racing/application/use-cases/GetPendingSponsorshipRequestsUseCase.ts @@ -4,12 +4,12 @@ * Retrieves pending sponsorship requests for an entity owner to review. */ -import type { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; -import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; -import type { SponsorableEntityType, SponsorshipRequest } from '../../domain/entities/SponsorshipRequest'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import type { SponsorableEntityType, SponsorshipRequest } from '../../domain/entities/SponsorshipRequest'; +import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import type { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; import { Money } from '../../domain/value-objects/Money'; export interface GetPendingSponsorshipRequestsInput { diff --git a/core/racing/application/use-cases/GetProfileOverviewUseCase.test.ts b/core/racing/application/use-cases/GetProfileOverviewUseCase.test.ts index d43a6e2ba..3be65ec30 100644 --- a/core/racing/application/use-cases/GetProfileOverviewUseCase.test.ts +++ b/core/racing/application/use-cases/GetProfileOverviewUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetProfileOverviewUseCase, -} from './GetProfileOverviewUseCase'; -import { DriverRepository } from '../../domain/repositories/DriverRepository'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; -import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; import { SocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; -import type { DriverStatsUseCase } from './DriverStatsUseCase'; -import type { RankingUseCase } from './RankingUseCase'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; import type { DriverExtendedProfileProvider } from '../ports/DriverExtendedProfileProvider'; +import type { DriverStatsUseCase } from './DriverStatsUseCase'; +import { + GetProfileOverviewUseCase, +} from './GetProfileOverviewUseCase'; +import type { RankingUseCase } from './RankingUseCase'; describe('GetProfileOverviewUseCase', () => { let useCase: GetProfileOverviewUseCase; diff --git a/core/racing/application/use-cases/GetProfileOverviewUseCase.ts b/core/racing/application/use-cases/GetProfileOverviewUseCase.ts index 0eb8239aa..229cc477e 100644 --- a/core/racing/application/use-cases/GetProfileOverviewUseCase.ts +++ b/core/racing/application/use-cases/GetProfileOverviewUseCase.ts @@ -1,15 +1,15 @@ -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; -import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import type { SocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; -import type { DriverExtendedProfileProvider } from '../ports/DriverExtendedProfileProvider'; -import type { DriverStatsUseCase, DriverStats } from './DriverStatsUseCase'; -import type { RankingUseCase, DriverRanking } from './RankingUseCase'; -import type { Driver } from '../../domain/entities/Driver'; -import type { Team } from '../../domain/entities/Team'; -import type { TeamMembership } from '../../domain/types/TeamMembership'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { SocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; +import type { Driver } from '../../domain/entities/Driver'; +import type { Team } from '../../domain/entities/Team'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import type { TeamMembership } from '../../domain/types/TeamMembership'; +import type { DriverExtendedProfileProvider } from '../ports/DriverExtendedProfileProvider'; +import type { DriverStats, DriverStatsUseCase } from './DriverStatsUseCase'; +import type { DriverRanking, RankingUseCase } from './RankingUseCase'; export type GetProfileOverviewInput = { driverId: string; }; diff --git a/core/racing/application/use-cases/GetRaceDetailUseCase.test.ts b/core/racing/application/use-cases/GetRaceDetailUseCase.test.ts index 33c88d29e..0805e6a22 100644 --- a/core/racing/application/use-cases/GetRaceDetailUseCase.test.ts +++ b/core/racing/application/use-cases/GetRaceDetailUseCase.test.ts @@ -1,17 +1,17 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetRaceDetailUseCase, - type GetRaceDetailInput, - type GetRaceDetailErrorCode, -} from './GetRaceDetailUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Race } from '../../domain/entities/Race'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import { + GetRaceDetailUseCase, + type GetRaceDetailErrorCode, + type GetRaceDetailInput, +} from './GetRaceDetailUseCase'; describe('GetRaceDetailUseCase', () => { let useCase: GetRaceDetailUseCase; diff --git a/core/racing/application/use-cases/GetRacePenaltiesUseCase.test.ts b/core/racing/application/use-cases/GetRacePenaltiesUseCase.test.ts index a1e4b094f..3beac5b51 100644 --- a/core/racing/application/use-cases/GetRacePenaltiesUseCase.test.ts +++ b/core/racing/application/use-cases/GetRacePenaltiesUseCase.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetRacePenaltiesUseCase, - type GetRacePenaltiesInput, - type GetRacePenaltiesErrorCode, -} from './GetRacePenaltiesUseCase'; -import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; +import { + GetRacePenaltiesUseCase, + type GetRacePenaltiesErrorCode, + type GetRacePenaltiesInput, +} from './GetRacePenaltiesUseCase'; describe('GetRacePenaltiesUseCase', () => { let useCase: GetRacePenaltiesUseCase; diff --git a/core/racing/application/use-cases/GetRacePenaltiesUseCase.ts b/core/racing/application/use-cases/GetRacePenaltiesUseCase.ts index ac8d12c39..b1bbd8d53 100644 --- a/core/racing/application/use-cases/GetRacePenaltiesUseCase.ts +++ b/core/racing/application/use-cases/GetRacePenaltiesUseCase.ts @@ -5,12 +5,12 @@ * Orchestrates domain logic and delegates presentation to the presenter. */ -import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Driver } from '../../domain/entities/Driver'; import type { Penalty } from '../../domain/entities/penalty/Penalty'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; export type GetRacePenaltiesInput = { raceId: string; diff --git a/core/racing/application/use-cases/GetRaceProtestsUseCase.test.ts b/core/racing/application/use-cases/GetRaceProtestsUseCase.test.ts index 395cc6443..4340625c2 100644 --- a/core/racing/application/use-cases/GetRaceProtestsUseCase.test.ts +++ b/core/racing/application/use-cases/GetRaceProtestsUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetRaceProtestsUseCase, - type GetRaceProtestsInput, - type GetRaceProtestsErrorCode, -} from './GetRaceProtestsUseCase'; -import { Protest } from '../../domain/entities/Protest'; -import { Driver } from '../../domain/entities/Driver'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Driver } from '../../domain/entities/Driver'; +import { Protest } from '../../domain/entities/Protest'; +import { + GetRaceProtestsUseCase, + type GetRaceProtestsErrorCode, + type GetRaceProtestsInput, +} from './GetRaceProtestsUseCase'; -import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; describe('GetRaceProtestsUseCase', () => { let useCase: GetRaceProtestsUseCase; diff --git a/core/racing/application/use-cases/GetRaceProtestsUseCase.ts b/core/racing/application/use-cases/GetRaceProtestsUseCase.ts index 18cacba92..9cb5ed028 100644 --- a/core/racing/application/use-cases/GetRaceProtestsUseCase.ts +++ b/core/racing/application/use-cases/GetRaceProtestsUseCase.ts @@ -5,12 +5,12 @@ * Orchestrates domain logic and delegates presentation to the presenter. */ -import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { Protest } from '../../domain/entities/Protest'; -import type { Driver } from '../../domain/entities/Driver'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Driver } from '../../domain/entities/Driver'; +import type { Protest } from '../../domain/entities/Protest'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; export interface GetRaceProtestsInput { raceId: string; diff --git a/core/racing/application/use-cases/GetRaceRegistrationsUseCase.test.ts b/core/racing/application/use-cases/GetRaceRegistrationsUseCase.test.ts index d1a1d5567..f959ef1bf 100644 --- a/core/racing/application/use-cases/GetRaceRegistrationsUseCase.test.ts +++ b/core/racing/application/use-cases/GetRaceRegistrationsUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetRaceRegistrationsUseCase, - type GetRaceRegistrationsInput, - type GetRaceRegistrationsErrorCode, -} from './GetRaceRegistrationsUseCase'; -import { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'; import { Race } from '@core/racing/domain/entities/Race'; +import { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { + GetRaceRegistrationsUseCase, + type GetRaceRegistrationsErrorCode, + type GetRaceRegistrationsInput, +} from './GetRaceRegistrationsUseCase'; describe('GetRaceRegistrationsUseCase', () => { let useCase: GetRaceRegistrationsUseCase; diff --git a/core/racing/application/use-cases/GetRaceRegistrationsUseCase.ts b/core/racing/application/use-cases/GetRaceRegistrationsUseCase.ts index ff52910bb..64d6164b9 100644 --- a/core/racing/application/use-cases/GetRaceRegistrationsUseCase.ts +++ b/core/racing/application/use-cases/GetRaceRegistrationsUseCase.ts @@ -1,7 +1,7 @@ +import type { Race } from '@core/racing/domain/entities/Race'; +import type { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'; import type { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; import type { RaceRepository } from '@core/racing/domain/repositories/RaceRepository'; -import type { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'; -import type { Race } from '@core/racing/domain/entities/Race'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; diff --git a/core/racing/application/use-cases/GetRaceResultsDetailUseCase.test.ts b/core/racing/application/use-cases/GetRaceResultsDetailUseCase.test.ts index 45063b6c4..165af8523 100644 --- a/core/racing/application/use-cases/GetRaceResultsDetailUseCase.test.ts +++ b/core/racing/application/use-cases/GetRaceResultsDetailUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetRaceResultsDetailUseCase, - type GetRaceResultsDetailInput, - type GetRaceResultsDetailErrorCode, -} from './GetRaceResultsDetailUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import { + GetRaceResultsDetailUseCase, + type GetRaceResultsDetailErrorCode, + type GetRaceResultsDetailInput, +} from './GetRaceResultsDetailUseCase'; describe('GetRaceResultsDetailUseCase', () => { let useCase: GetRaceResultsDetailUseCase; diff --git a/core/racing/application/use-cases/GetRaceResultsDetailUseCase.ts b/core/racing/application/use-cases/GetRaceResultsDetailUseCase.ts index bfd1dc53b..115cb4281 100644 --- a/core/racing/application/use-cases/GetRaceResultsDetailUseCase.ts +++ b/core/racing/application/use-cases/GetRaceResultsDetailUseCase.ts @@ -1,15 +1,15 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; import type { Driver } from '../../domain/entities/Driver'; import type { League } from '../../domain/entities/League'; import type { Race } from '../../domain/entities/Race'; import type { Penalty } from '../../domain/entities/penalty/Penalty'; import type { Result as DomainResult } from '../../domain/entities/result/Result'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; export type GetRaceResultsDetailInput = { raceId: string; diff --git a/core/racing/application/use-cases/GetRaceWithSOFUseCase.test.ts b/core/racing/application/use-cases/GetRaceWithSOFUseCase.test.ts index 0e759f890..c7b9718d6 100644 --- a/core/racing/application/use-cases/GetRaceWithSOFUseCase.test.ts +++ b/core/racing/application/use-cases/GetRaceWithSOFUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetRaceWithSOFUseCase, - type GetRaceWithSOFInput, - type GetRaceWithSOFErrorCode, -} from './GetRaceWithSOFUseCase'; -import { Race } from '../../domain/entities/Race'; -import { SessionType } from '../../domain/value-objects/SessionType'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Race } from '../../domain/entities/Race'; import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import { SessionType } from '../../domain/value-objects/SessionType'; +import { + GetRaceWithSOFUseCase, + type GetRaceWithSOFErrorCode, + type GetRaceWithSOFInput, +} from './GetRaceWithSOFUseCase'; describe('GetRaceWithSOFUseCase', () => { let useCase: GetRaceWithSOFUseCase; diff --git a/core/racing/application/use-cases/GetRaceWithSOFUseCase.ts b/core/racing/application/use-cases/GetRaceWithSOFUseCase.ts index 2a74f3c1b..6b8096a14 100644 --- a/core/racing/application/use-cases/GetRaceWithSOFUseCase.ts +++ b/core/racing/application/use-cases/GetRaceWithSOFUseCase.ts @@ -7,14 +7,14 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { Race } from '../../domain/entities/Race'; import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; import { - AverageStrengthOfFieldCalculator, - type StrengthOfFieldCalculator, + AverageStrengthOfFieldCalculator, + type StrengthOfFieldCalculator, } from '../../domain/services/StrengthOfFieldCalculator'; -import type { Race } from '../../domain/entities/Race'; export interface GetRaceWithSOFInput { raceId: string; diff --git a/core/racing/application/use-cases/GetRacesPageDataUseCase.test.ts b/core/racing/application/use-cases/GetRacesPageDataUseCase.test.ts index 3733cb1e4..79209dcd4 100644 --- a/core/racing/application/use-cases/GetRacesPageDataUseCase.test.ts +++ b/core/racing/application/use-cases/GetRacesPageDataUseCase.test.ts @@ -2,14 +2,14 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import { GetRacesPageDataUseCase, type GetRacesPageDataErrorCode, type GetRacesPageDataInput, type GetRacesPageDataResult, } from './GetRacesPageDataUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; describe('GetRacesPageDataUseCase', () => { let useCase: GetRacesPageDataUseCase; diff --git a/core/racing/application/use-cases/GetRacesPageDataUseCase.ts b/core/racing/application/use-cases/GetRacesPageDataUseCase.ts index a5c3a58b2..58e81f857 100644 --- a/core/racing/application/use-cases/GetRacesPageDataUseCase.ts +++ b/core/racing/application/use-cases/GetRacesPageDataUseCase.ts @@ -1,10 +1,10 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Race } from '../../domain/entities/Race'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { League } from '../../domain/entities/League'; +import type { Race } from '../../domain/entities/Race'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; export interface GetRacesPageDataInput { leagueId: string; diff --git a/core/racing/application/use-cases/GetSeasonDetailsUseCase.test.ts b/core/racing/application/use-cases/GetSeasonDetailsUseCase.test.ts index e64bdc5ce..9c7d63972 100644 --- a/core/racing/application/use-cases/GetSeasonDetailsUseCase.test.ts +++ b/core/racing/application/use-cases/GetSeasonDetailsUseCase.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetSeasonDetailsUseCase, - type GetSeasonDetailsInput, - type GetSeasonDetailsErrorCode, -} from './GetSeasonDetailsUseCase'; -import { Season } from '../../domain/entities/season/Season'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Season } from '../../domain/entities/season/Season'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { + GetSeasonDetailsUseCase, + type GetSeasonDetailsErrorCode, + type GetSeasonDetailsInput, +} from './GetSeasonDetailsUseCase'; describe('GetSeasonDetailsUseCase', () => { let useCase: GetSeasonDetailsUseCase; diff --git a/core/racing/application/use-cases/GetSeasonDetailsUseCase.ts b/core/racing/application/use-cases/GetSeasonDetailsUseCase.ts index e7eca203b..e520ba263 100644 --- a/core/racing/application/use-cases/GetSeasonDetailsUseCase.ts +++ b/core/racing/application/use-cases/GetSeasonDetailsUseCase.ts @@ -1,7 +1,7 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import type { Season } from '../../domain/entities/season/Season'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; export interface GetSeasonDetailsInput { seasonId: string; diff --git a/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.test.ts b/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.test.ts index 1b4a7dcc1..dbb1ee7db 100644 --- a/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.test.ts +++ b/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.test.ts @@ -1,19 +1,19 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; -import { - GetSeasonSponsorshipsUseCase, - type GetSeasonSponsorshipsInput, - type GetSeasonSponsorshipsErrorCode, -} from './GetSeasonSponsorshipsUseCase'; -import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { Season } from '../../domain/entities/season/Season'; -import { League } from '../../domain/entities/League'; -import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; -import { Money } from '../../domain/value-objects/Money'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { League } from '../../domain/entities/League'; +import { Season } from '../../domain/entities/season/Season'; +import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; +import { Money } from '../../domain/value-objects/Money'; +import { + GetSeasonSponsorshipsUseCase, + type GetSeasonSponsorshipsErrorCode, + type GetSeasonSponsorshipsInput, +} from './GetSeasonSponsorshipsUseCase'; describe('GetSeasonSponsorshipsUseCase', () => { let seasonSponsorshipRepository: { diff --git a/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.ts b/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.ts index 07a98d94a..0418bd086 100644 --- a/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.ts +++ b/core/racing/application/use-cases/GetSeasonSponsorshipsUseCase.ts @@ -1,10 +1,10 @@ -import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; export type GetSeasonSponsorshipsInput = { seasonId: string; }; diff --git a/core/racing/application/use-cases/GetSponsorDashboardUseCase.test.ts b/core/racing/application/use-cases/GetSponsorDashboardUseCase.test.ts index 88039172e..bf0c0445c 100644 --- a/core/racing/application/use-cases/GetSponsorDashboardUseCase.test.ts +++ b/core/racing/application/use-cases/GetSponsorDashboardUseCase.test.ts @@ -1,21 +1,21 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetSponsorDashboardUseCase, - type GetSponsorDashboardInput, - type GetSponsorDashboardErrorCode, -} from './GetSponsorDashboardUseCase'; -import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; -import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; -import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; -import { Season } from '../../domain/entities/season/Season'; -import { League } from '../../domain/entities/League'; -import { Money } from '../../domain/value-objects/Money'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { League } from '../../domain/entities/League'; +import { Season } from '../../domain/entities/season/Season'; +import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; +import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; +import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { Money } from '../../domain/value-objects/Money'; +import { + GetSponsorDashboardUseCase, + type GetSponsorDashboardErrorCode, + type GetSponsorDashboardInput, +} from './GetSponsorDashboardUseCase'; describe('GetSponsorDashboardUseCase', () => { let useCase: GetSponsorDashboardUseCase; diff --git a/core/racing/application/use-cases/GetSponsorDashboardUseCase.ts b/core/racing/application/use-cases/GetSponsorDashboardUseCase.ts index f0eb858da..350c1bf25 100644 --- a/core/racing/application/use-cases/GetSponsorDashboardUseCase.ts +++ b/core/racing/application/use-cases/GetSponsorDashboardUseCase.ts @@ -4,14 +4,14 @@ * Returns sponsor dashboard metrics including sponsorships, impressions, and investment data. */ -import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; -import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; +import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; import { Money } from '../../domain/value-objects/Money'; export interface GetSponsorDashboardInput { diff --git a/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.test.ts b/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.test.ts index c13bc1096..156dad484 100644 --- a/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.test.ts +++ b/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.test.ts @@ -1,21 +1,21 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetSponsorSponsorshipsUseCase, - type GetSponsorSponsorshipsInput, - type GetSponsorSponsorshipsErrorCode, -} from './GetSponsorSponsorshipsUseCase'; -import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; -import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; -import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; -import { Season } from '../../domain/entities/season/Season'; -import { League } from '../../domain/entities/League'; -import { Money } from '../../domain/value-objects/Money'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { League } from '../../domain/entities/League'; +import { Season } from '../../domain/entities/season/Season'; +import { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; +import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; +import { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { Money } from '../../domain/value-objects/Money'; +import { + GetSponsorSponsorshipsUseCase, + type GetSponsorSponsorshipsErrorCode, + type GetSponsorSponsorshipsInput, +} from './GetSponsorSponsorshipsUseCase'; describe('GetSponsorSponsorshipsUseCase', () => { let useCase: GetSponsorSponsorshipsUseCase; diff --git a/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.ts b/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.ts index 06e96e4a7..537cecd7d 100644 --- a/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.ts +++ b/core/racing/application/use-cases/GetSponsorSponsorshipsUseCase.ts @@ -6,16 +6,16 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { League } from '../../domain/entities/League'; +import type { Season } from '../../domain/entities/season/Season'; +import type { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; +import type { Sponsor } from '../../domain/entities/sponsor/Sponsor'; import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import type { SeasonSponsorshipRepository } from '../../domain/repositories/SeasonSponsorshipRepository'; import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; -import type { SeasonSponsorship } from '../../domain/entities/season/SeasonSponsorship'; -import type { League } from '../../domain/entities/League'; -import type { Season } from '../../domain/entities/season/Season'; -import type { Sponsor } from '../../domain/entities/sponsor/Sponsor'; import { Money } from '../../domain/value-objects/Money'; export type GetSponsorSponsorshipsInput = { diff --git a/core/racing/application/use-cases/GetSponsorUseCase.test.ts b/core/racing/application/use-cases/GetSponsorUseCase.test.ts index c1105ecbe..2e87f3fb0 100644 --- a/core/racing/application/use-cases/GetSponsorUseCase.test.ts +++ b/core/racing/application/use-cases/GetSponsorUseCase.test.ts @@ -1,12 +1,12 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; -import { - GetSponsorUseCase, - type GetSponsorInput, - type GetSponsorErrorCode, -} from './GetSponsorUseCase'; -import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; -import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { + GetSponsorUseCase, + type GetSponsorErrorCode, + type GetSponsorInput, +} from './GetSponsorUseCase'; describe('GetSponsorUseCase', () => { let sponsorRepository: { diff --git a/core/racing/application/use-cases/GetSponsorUseCase.ts b/core/racing/application/use-cases/GetSponsorUseCase.ts index ee3b93e61..ac4abcbce 100644 --- a/core/racing/application/use-cases/GetSponsorUseCase.ts +++ b/core/racing/application/use-cases/GetSponsorUseCase.ts @@ -4,10 +4,10 @@ * Retrieves a single sponsor by ID. */ -import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; export type GetSponsorInput = { sponsorId: string; diff --git a/core/racing/application/use-cases/GetSponsorsUseCase.test.ts b/core/racing/application/use-cases/GetSponsorsUseCase.test.ts index b3631f00b..a1fbbc236 100644 --- a/core/racing/application/use-cases/GetSponsorsUseCase.test.ts +++ b/core/racing/application/use-cases/GetSponsorsUseCase.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { GetSponsorsUseCase } from './GetSponsorsUseCase'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Sponsor } from '../../domain/entities/sponsor/Sponsor'; import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; +import { GetSponsorsUseCase } from './GetSponsorsUseCase'; describe('GetSponsorsUseCase', () => { let useCase: GetSponsorsUseCase; diff --git a/core/racing/application/use-cases/GetSponsorsUseCase.ts b/core/racing/application/use-cases/GetSponsorsUseCase.ts index 86016ee6f..3c8035dae 100644 --- a/core/racing/application/use-cases/GetSponsorsUseCase.ts +++ b/core/racing/application/use-cases/GetSponsorsUseCase.ts @@ -1,7 +1,7 @@ -import type { Sponsor } from '../../domain/entities/sponsor/Sponsor'; -import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Sponsor } from '../../domain/entities/sponsor/Sponsor'; +import type { SponsorRepository } from '../../domain/repositories/SponsorRepository'; export interface GetSponsorsInput {} diff --git a/core/racing/application/use-cases/GetTeamDetailsUseCase.test.ts b/core/racing/application/use-cases/GetTeamDetailsUseCase.test.ts index eeca06bd2..4f6a1885d 100644 --- a/core/racing/application/use-cases/GetTeamDetailsUseCase.test.ts +++ b/core/racing/application/use-cases/GetTeamDetailsUseCase.test.ts @@ -1,12 +1,14 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetTeamDetailsUseCase, - type GetTeamDetailsInput, - type GetTeamDetailsErrorCode, -} from './GetTeamDetailsUseCase'; -import { Team } from '../../domain/entities/Team'; -import type { TeamMembership } from '../../domain/types/TeamMembership'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { Team } from '../../domain/entities/Team'; +import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import type { TeamMembership } from '../../domain/types/TeamMembership'; +import { + GetTeamDetailsUseCase, + type GetTeamDetailsErrorCode, + type GetTeamDetailsInput, +} from './GetTeamDetailsUseCase'; describe('GetTeamDetailsUseCase', () => { let useCase: GetTeamDetailsUseCase; diff --git a/core/racing/application/use-cases/GetTeamDetailsUseCase.ts b/core/racing/application/use-cases/GetTeamDetailsUseCase.ts index 61c3bf6a2..7f86fdcd1 100644 --- a/core/racing/application/use-cases/GetTeamDetailsUseCase.ts +++ b/core/racing/application/use-cases/GetTeamDetailsUseCase.ts @@ -1,8 +1,8 @@ -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Team } from '../../domain/entities/Team'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; import type { TeamMembership } from '../../domain/types/TeamMembership'; export interface GetTeamDetailsInput { diff --git a/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.test.ts b/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.test.ts index 93d24411b..7526ad300 100644 --- a/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.test.ts +++ b/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.test.ts @@ -1,16 +1,16 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetTeamJoinRequestsUseCase, - type GetTeamJoinRequestsInput, - type GetTeamJoinRequestsResult, - type GetTeamJoinRequestsErrorCode, -} from './GetTeamJoinRequestsUseCase'; -import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; import { Team } from '../../domain/entities/Team'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { + GetTeamJoinRequestsUseCase, + type GetTeamJoinRequestsErrorCode, + type GetTeamJoinRequestsInput, + type GetTeamJoinRequestsResult, +} from './GetTeamJoinRequestsUseCase'; describe('GetTeamJoinRequestsUseCase', () => { let useCase: GetTeamJoinRequestsUseCase; diff --git a/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.ts b/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.ts index 5ca5266a7..120a182cc 100644 --- a/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.ts +++ b/core/racing/application/use-cases/GetTeamJoinRequestsUseCase.ts @@ -1,11 +1,11 @@ -import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; -import type { TeamJoinRequest } from '../../domain/types/TeamMembership'; -import type { Driver } from '../../domain/entities/Driver'; -import type { Team } from '../../domain/entities/Team'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { Driver } from '../../domain/entities/Driver'; +import type { Team } from '../../domain/entities/Team'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import type { TeamJoinRequest } from '../../domain/types/TeamMembership'; export type GetTeamJoinRequestsInput = { teamId: string; diff --git a/core/racing/application/use-cases/GetTeamMembersUseCase.test.ts b/core/racing/application/use-cases/GetTeamMembersUseCase.test.ts index a425dccd4..b71067124 100644 --- a/core/racing/application/use-cases/GetTeamMembersUseCase.test.ts +++ b/core/racing/application/use-cases/GetTeamMembersUseCase.test.ts @@ -1,16 +1,16 @@ +import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Driver } from '../../domain/entities/Driver'; import { Team } from '../../domain/entities/Team'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; import { GetTeamMembersUseCase, type GetTeamMembersErrorCode, type GetTeamMembersInput } from './GetTeamMembersUseCase'; -import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; -import type { Logger } from '@core/shared/domain/Logger'; describe('GetTeamMembersUseCase', () => { let useCase: GetTeamMembersUseCase; diff --git a/core/racing/application/use-cases/GetTeamMembersUseCase.ts b/core/racing/application/use-cases/GetTeamMembersUseCase.ts index 7291fcf2d..09d2de76d 100644 --- a/core/racing/application/use-cases/GetTeamMembersUseCase.ts +++ b/core/racing/application/use-cases/GetTeamMembersUseCase.ts @@ -1,12 +1,12 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Driver } from '../../domain/entities/Driver'; import type { Team } from '../../domain/entities/Team'; -import type { TeamMembership } from '../../domain/types/TeamMembership'; -import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; import { TeamRepository } from '../../domain/repositories/TeamRepository'; -import type { Logger } from '@core/shared/domain/Logger'; +import type { TeamMembership } from '../../domain/types/TeamMembership'; export type GetTeamMembersInput = { teamId: string; diff --git a/core/racing/application/use-cases/GetTeamMembershipUseCase.test.ts b/core/racing/application/use-cases/GetTeamMembershipUseCase.test.ts index 50af1e2e5..99ccde84a 100644 --- a/core/racing/application/use-cases/GetTeamMembershipUseCase.test.ts +++ b/core/racing/application/use-cases/GetTeamMembershipUseCase.test.ts @@ -1,7 +1,7 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; describe('GetTeamMembershipUseCase', () => { const mockGetMembership = vi.fn(); diff --git a/core/racing/application/use-cases/GetTeamMembershipUseCase.ts b/core/racing/application/use-cases/GetTeamMembershipUseCase.ts index 6b2bbfba0..a65d7a082 100644 --- a/core/racing/application/use-cases/GetTeamMembershipUseCase.ts +++ b/core/racing/application/use-cases/GetTeamMembershipUseCase.ts @@ -1,7 +1,7 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; -import type { Logger } from '@core/shared/domain/Logger'; export type GetTeamMembershipInput = { teamId: string; diff --git a/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts b/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts index dee1fc9f2..048327159 100644 --- a/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts +++ b/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.test.ts @@ -7,8 +7,9 @@ import { type GetTeamsLeaderboardInput } from './GetTeamsLeaderboardUseCase'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { Logger } from 'vite'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; describe('GetTeamsLeaderboardUseCase', () => { let useCase: GetTeamsLeaderboardUseCase; diff --git a/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.ts b/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.ts index c66bcda1d..429d6338d 100644 --- a/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.ts +++ b/core/racing/application/use-cases/GetTeamsLeaderboardUseCase.ts @@ -1,10 +1,10 @@ -import { Team } from '../../domain/entities/Team'; import { SkillLevelService, type SkillLevel } from '@core/racing/domain/services/SkillLevelService'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { Team } from '../../domain/entities/Team'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; interface DriverStatsAdapter { rating: number | null; diff --git a/core/racing/application/use-cases/GetTotalDriversUseCase.test.ts b/core/racing/application/use-cases/GetTotalDriversUseCase.test.ts index 41bb7e389..1390ab5de 100644 --- a/core/racing/application/use-cases/GetTotalDriversUseCase.test.ts +++ b/core/racing/application/use-cases/GetTotalDriversUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetTotalDriversUseCase, - GetTotalDriversInput, - GetTotalDriversErrorCode, -} from './GetTotalDriversUseCase'; -import { DriverRepository } from '../../domain/repositories/DriverRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { + GetTotalDriversErrorCode, + GetTotalDriversInput, + GetTotalDriversUseCase, +} from './GetTotalDriversUseCase'; describe('GetTotalDriversUseCase', () => { let useCase: GetTotalDriversUseCase; let driverRepository: { diff --git a/core/racing/application/use-cases/GetTotalLeaguesUseCase.test.ts b/core/racing/application/use-cases/GetTotalLeaguesUseCase.test.ts index bd5a2cb56..02faf7462 100644 --- a/core/racing/application/use-cases/GetTotalLeaguesUseCase.test.ts +++ b/core/racing/application/use-cases/GetTotalLeaguesUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - GetTotalLeaguesUseCase, - type GetTotalLeaguesInput, - type GetTotalLeaguesErrorCode, -} from './GetTotalLeaguesUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { + GetTotalLeaguesUseCase, + type GetTotalLeaguesErrorCode, + type GetTotalLeaguesInput, +} from './GetTotalLeaguesUseCase'; describe('GetTotalLeaguesUseCase', () => { let useCase: GetTotalLeaguesUseCase; diff --git a/core/racing/application/use-cases/GetTotalLeaguesUseCase.ts b/core/racing/application/use-cases/GetTotalLeaguesUseCase.ts index 3cd5b1131..0bddb81e4 100644 --- a/core/racing/application/use-cases/GetTotalLeaguesUseCase.ts +++ b/core/racing/application/use-cases/GetTotalLeaguesUseCase.ts @@ -1,5 +1,5 @@ -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; export interface GetTotalLeaguesInput {} diff --git a/core/racing/application/use-cases/GetTotalRacesUseCase.test.ts b/core/racing/application/use-cases/GetTotalRacesUseCase.test.ts index 70b2dca86..e386a5bb1 100644 --- a/core/racing/application/use-cases/GetTotalRacesUseCase.test.ts +++ b/core/racing/application/use-cases/GetTotalRacesUseCase.test.ts @@ -1,11 +1,12 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - GetTotalRacesUseCase, - type GetTotalRacesInput, - type GetTotalRacesErrorCode, -} from './GetTotalRacesUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Logger } from 'vite'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { + GetTotalRacesUseCase, + type GetTotalRacesErrorCode, + type GetTotalRacesInput, +} from './GetTotalRacesUseCase'; describe('GetTotalRacesUseCase', () => { let useCase: GetTotalRacesUseCase; diff --git a/core/racing/application/use-cases/ImportRaceResultsApiUseCase.test.ts b/core/racing/application/use-cases/ImportRaceResultsApiUseCase.test.ts index 1b4eb49de..c17d1bed5 100644 --- a/core/racing/application/use-cases/ImportRaceResultsApiUseCase.test.ts +++ b/core/racing/application/use-cases/ImportRaceResultsApiUseCase.test.ts @@ -2,6 +2,11 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { ResultRepository } from '../../domain/repositories/ResultRepository'; +import { StandingRepository } from '../../domain/repositories/StandingRepository'; import { ImportRaceResultsApiUseCase, type ImportRaceResultsApiErrorCode, diff --git a/core/racing/application/use-cases/ImportRaceResultsApiUseCase.ts b/core/racing/application/use-cases/ImportRaceResultsApiUseCase.ts index e7c48b5a2..ad3e5c767 100644 --- a/core/racing/application/use-cases/ImportRaceResultsApiUseCase.ts +++ b/core/racing/application/use-cases/ImportRaceResultsApiUseCase.ts @@ -1,12 +1,12 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result as RaceResult } from '../../domain/entities/result/Result'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { ResultRepository } from '../../domain/repositories/ResultRepository'; import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { ResultRepository } from '../../domain/repositories/ResultRepository'; import { StandingRepository } from '../../domain/repositories/StandingRepository'; -import type { Logger } from '@core/shared/domain/Logger'; export type ImportRaceResultDTO = { id: string; diff --git a/core/racing/application/use-cases/ImportRaceResultsUseCase.test.ts b/core/racing/application/use-cases/ImportRaceResultsUseCase.test.ts index 2bb322102..bf8d5934b 100644 --- a/core/racing/application/use-cases/ImportRaceResultsUseCase.test.ts +++ b/core/racing/application/use-cases/ImportRaceResultsUseCase.test.ts @@ -1,6 +1,11 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { ResultRepository } from '../../domain/repositories/ResultRepository'; +import { StandingRepository } from '../../domain/repositories/StandingRepository'; import { ImportRaceResultsUseCase, type ImportRaceResultsErrorCode, diff --git a/core/racing/application/use-cases/ImportRaceResultsUseCase.ts b/core/racing/application/use-cases/ImportRaceResultsUseCase.ts index 65adc45c6..5e3031dbb 100644 --- a/core/racing/application/use-cases/ImportRaceResultsUseCase.ts +++ b/core/racing/application/use-cases/ImportRaceResultsUseCase.ts @@ -1,12 +1,12 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result as RaceResult } from '../../domain/entities/result/Result'; -import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { ResultRepository } from '../../domain/repositories/ResultRepository'; import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { ResultRepository } from '../../domain/repositories/ResultRepository'; import { StandingRepository } from '../../domain/repositories/StandingRepository'; -import type { Logger } from '@core/shared/domain/Logger'; export type ImportRaceResultRow = { id: string; diff --git a/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.test.ts b/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.test.ts index b720e3ed0..312db08ed 100644 --- a/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.test.ts +++ b/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.test.ts @@ -1,12 +1,12 @@ +import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { beforeEach, describe, expect, it, type Mock, vi } from 'vitest'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; import { IsDriverRegisteredForRaceUseCase, type IsDriverRegisteredForRaceErrorCode, type IsDriverRegisteredForRaceInput } from './IsDriverRegisteredForRaceUseCase'; -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import type { Logger } from '@core/shared/domain/Logger'; describe('IsDriverRegisteredForRaceUseCase', () => { let useCase: IsDriverRegisteredForRaceUseCase; diff --git a/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.ts b/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.ts index bb67a4f77..7f9f5eed5 100644 --- a/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.ts +++ b/core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase.ts @@ -1,8 +1,8 @@ -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import type { Logger } from '@core/shared/domain/Logger'; import type { UseCase } from '@core/shared/application/UseCase'; +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; export type IsDriverRegisteredForRaceErrorCode = 'REPOSITORY_ERROR'; diff --git a/core/racing/application/use-cases/JoinLeagueUseCase.test.ts b/core/racing/application/use-cases/JoinLeagueUseCase.test.ts index f16e8d59c..8d9963019 100644 --- a/core/racing/application/use-cases/JoinLeagueUseCase.test.ts +++ b/core/racing/application/use-cases/JoinLeagueUseCase.test.ts @@ -1,8 +1,9 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { JoinLeagueUseCase, type JoinLeagueInput, type JoinLeagueErrorCode } from './JoinLeagueUseCase'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import { LeagueMembership } from '../../domain/entities/LeagueMembership'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Logger } from 'vite'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { JoinLeagueUseCase, type JoinLeagueErrorCode, type JoinLeagueInput } from './JoinLeagueUseCase'; describe('JoinLeagueUseCase', () => { let useCase: JoinLeagueUseCase; diff --git a/core/racing/application/use-cases/JoinLeagueUseCase.ts b/core/racing/application/use-cases/JoinLeagueUseCase.ts index 8365162a4..3fd81a3a7 100644 --- a/core/racing/application/use-cases/JoinLeagueUseCase.ts +++ b/core/racing/application/use-cases/JoinLeagueUseCase.ts @@ -1,5 +1,5 @@ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { LeagueMembership } from '../../domain/entities/LeagueMembership'; import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; diff --git a/core/racing/application/use-cases/JoinTeamUseCase.test.ts b/core/racing/application/use-cases/JoinTeamUseCase.test.ts index 5c660c2a3..2342c1828 100644 --- a/core/racing/application/use-cases/JoinTeamUseCase.test.ts +++ b/core/racing/application/use-cases/JoinTeamUseCase.test.ts @@ -2,6 +2,8 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Team } from '../../domain/entities/Team'; +import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { JoinTeamUseCase, type JoinTeamErrorCode, diff --git a/core/racing/application/use-cases/JoinTeamUseCase.ts b/core/racing/application/use-cases/JoinTeamUseCase.ts index 8339168ea..c5425baa8 100644 --- a/core/racing/application/use-cases/JoinTeamUseCase.ts +++ b/core/racing/application/use-cases/JoinTeamUseCase.ts @@ -1,10 +1,10 @@ -import { TeamMembership } from '../../domain/types/TeamMembership'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Team } from '../../domain/entities/Team'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { TeamMembership } from '../../domain/types/TeamMembership'; export type JoinTeamErrorCode = | 'ALREADY_IN_TEAM' diff --git a/core/racing/application/use-cases/LeagueSeasonScheduleMutationsUseCases.test.ts b/core/racing/application/use-cases/LeagueSeasonScheduleMutationsUseCases.test.ts index 6a777819b..15dbbc40a 100644 --- a/core/racing/application/use-cases/LeagueSeasonScheduleMutationsUseCases.test.ts +++ b/core/racing/application/use-cases/LeagueSeasonScheduleMutationsUseCases.test.ts @@ -5,8 +5,8 @@ import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorC import { Race } from '../../domain/entities/Race'; import { Season } from '../../domain/entities/season/Season'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { CreateLeagueSeasonScheduleRaceUseCase, diff --git a/core/racing/application/use-cases/LeaveTeamUseCase.test.ts b/core/racing/application/use-cases/LeaveTeamUseCase.test.ts index b9740c3e2..c0c6b3675 100644 --- a/core/racing/application/use-cases/LeaveTeamUseCase.test.ts +++ b/core/racing/application/use-cases/LeaveTeamUseCase.test.ts @@ -1,12 +1,13 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - LeaveTeamUseCase, - type LeaveTeamInput, - type LeaveTeamErrorCode, -} from './LeaveTeamUseCase'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Logger } from 'vite'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; import type { TeamRepository } from '../../domain/repositories/TeamRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { + LeaveTeamUseCase, + type LeaveTeamErrorCode, + type LeaveTeamInput, +} from './LeaveTeamUseCase'; describe('LeaveTeamUseCase', () => { let useCase: LeaveTeamUseCase; diff --git a/core/racing/application/use-cases/LeaveTeamUseCase.ts b/core/racing/application/use-cases/LeaveTeamUseCase.ts index 73d2da166..a7b166378 100644 --- a/core/racing/application/use-cases/LeaveTeamUseCase.ts +++ b/core/racing/application/use-cases/LeaveTeamUseCase.ts @@ -1,10 +1,10 @@ -import { TeamMembership } from '../../domain/types/TeamMembership'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Team } from '../../domain/entities/Team'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { TeamMembership } from '../../domain/types/TeamMembership'; export type LeaveTeamErrorCode = | 'TEAM_NOT_FOUND' diff --git a/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.test.ts b/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.test.ts index bb91693b2..6da1398b2 100644 --- a/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.test.ts +++ b/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, vi } from 'vitest'; -import { - ListLeagueScoringPresetsUseCase, - type ListLeagueScoringPresetsInput, - type ListLeagueScoringPresetsErrorCode, -} from './ListLeagueScoringPresetsUseCase'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; +import { + ListLeagueScoringPresetsUseCase, + type ListLeagueScoringPresetsErrorCode, + type ListLeagueScoringPresetsInput, +} from './ListLeagueScoringPresetsUseCase'; describe('ListLeagueScoringPresetsUseCase', () => { let useCase: ListLeagueScoringPresetsUseCase; diff --git a/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.ts b/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.ts index 93249620f..643557783 100644 --- a/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.ts +++ b/core/racing/application/use-cases/ListLeagueScoringPresetsUseCase.ts @@ -1,6 +1,6 @@ -import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; export type ListLeagueScoringPresetsInput = {}; export type { LeagueScoringPreset } from '../../domain/types/LeagueScoringPreset'; diff --git a/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.test.ts b/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.test.ts index ee31fdf5b..e672b2875 100644 --- a/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.test.ts +++ b/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.test.ts @@ -1,13 +1,13 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - ListSeasonsForLeagueUseCase, - type ListSeasonsForLeagueInput, - type ListSeasonsForLeagueErrorCode, -} from './ListSeasonsForLeagueUseCase'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { Season } from '../../domain/entities/season/Season'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Season } from '../../domain/entities/season/Season'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { + ListSeasonsForLeagueUseCase, + type ListSeasonsForLeagueErrorCode, + type ListSeasonsForLeagueInput, +} from './ListSeasonsForLeagueUseCase'; describe('ListSeasonsForLeagueUseCase', () => { diff --git a/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.ts b/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.ts index 68cdde2cb..06a533471 100644 --- a/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.ts +++ b/core/racing/application/use-cases/ListSeasonsForLeagueUseCase.ts @@ -1,8 +1,8 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { Season } from '../../domain/entities/season/Season'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; export interface ListSeasonsForLeagueInput { leagueId: string; diff --git a/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.test.ts b/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.test.ts index 642e04f26..5fcbe0010 100644 --- a/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.test.ts +++ b/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.test.ts @@ -1,13 +1,13 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - ManageSeasonLifecycleUseCase, - type ManageSeasonLifecycleInput, - type ManageSeasonLifecycleErrorCode, -} from './ManageSeasonLifecycleUseCase'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { Season } from '../../domain/entities/season/Season'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { Season } from '../../domain/entities/season/Season'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { + ManageSeasonLifecycleUseCase, + type ManageSeasonLifecycleErrorCode, + type ManageSeasonLifecycleInput, +} from './ManageSeasonLifecycleUseCase'; describe('ManageSeasonLifecycleUseCase', () => { let useCase: ManageSeasonLifecycleUseCase; diff --git a/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.ts b/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.ts index 7dc813034..a7fb68c0d 100644 --- a/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.ts +++ b/core/racing/application/use-cases/ManageSeasonLifecycleUseCase.ts @@ -1,8 +1,8 @@ -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonStatus } from '../../domain/value-objects/SeasonStatus'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { SeasonStatus } from '../../domain/value-objects/SeasonStatus'; export type SeasonLifecycleTransition = | 'activate' | 'complete' diff --git a/core/racing/application/use-cases/PublishLeagueSeasonScheduleUseCase.test.ts b/core/racing/application/use-cases/PublishLeagueSeasonScheduleUseCase.test.ts index c4a764325..307e6e5ca 100644 --- a/core/racing/application/use-cases/PublishLeagueSeasonScheduleUseCase.test.ts +++ b/core/racing/application/use-cases/PublishLeagueSeasonScheduleUseCase.test.ts @@ -1,12 +1,13 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Season } from '../../domain/entities/season/Season'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { Logger } from 'vite'; import { - PublishLeagueSeasonScheduleUseCase, - type PublishLeagueSeasonScheduleErrorCode, + PublishLeagueSeasonScheduleUseCase, + type PublishLeagueSeasonScheduleErrorCode, } from './PublishLeagueSeasonScheduleUseCase'; function createLogger(): Logger { diff --git a/core/racing/application/use-cases/QuickPenaltyUseCase.test.ts b/core/racing/application/use-cases/QuickPenaltyUseCase.test.ts index 13ce0371c..5eead1cc3 100644 --- a/core/racing/application/use-cases/QuickPenaltyUseCase.test.ts +++ b/core/racing/application/use-cases/QuickPenaltyUseCase.test.ts @@ -1,6 +1,9 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; +import { RaceRepository } from '../../domain/repositories/RaceRepository'; import { QuickPenaltyUseCase, type QuickPenaltyErrorCode, type QuickPenaltyInput } from './QuickPenaltyUseCase'; describe('QuickPenaltyUseCase', () => { diff --git a/core/racing/application/use-cases/QuickPenaltyUseCase.ts b/core/racing/application/use-cases/QuickPenaltyUseCase.ts index f17de6935..75f191f57 100644 --- a/core/racing/application/use-cases/QuickPenaltyUseCase.ts +++ b/core/racing/application/use-cases/QuickPenaltyUseCase.ts @@ -5,14 +5,14 @@ * Designed for fast, common penalty scenarios like track limits, warnings, etc. */ -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { randomUUID } from 'crypto'; import { Penalty } from '../../domain/entities/penalty/Penalty'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; export type QuickPenaltyErrorCode = 'RACE_NOT_FOUND' | 'UNAUTHORIZED' | 'UNKNOWN_INFRACTION' | 'REPOSITORY_ERROR'; diff --git a/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.test.ts b/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.test.ts index 08dcb3a1b..317703976 100644 --- a/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.test.ts +++ b/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.test.ts @@ -2,20 +2,20 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { Penalty } from '../../domain/entities/Penalty'; +import type { ChampionshipStandingRepository } from '../../domain/repositories/ChampionshipStandingRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import type { ResultRepository } from '../../domain/repositories/ResultRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { ChampionshipAggregator } from '../../domain/services/ChampionshipAggregator'; +import type { EventScoringService } from '../../domain/services/EventScoringService'; import { RecalculateChampionshipStandingsUseCase, type RecalculateChampionshipStandingsErrorCode, type RecalculateChampionshipStandingsInput } from './RecalculateChampionshipStandingsUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; -import type { ChampionshipStandingRepository } from '../../domain/repositories/ChampionshipStandingRepository'; -import type { EventScoringService } from '../../domain/services/EventScoringService'; -import type { ChampionshipAggregator } from '../../domain/services/ChampionshipAggregator'; describe('RecalculateChampionshipStandingsUseCase', () => { let useCase: RecalculateChampionshipStandingsUseCase; diff --git a/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.ts b/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.ts index 5d8870697..0e7c41c99 100644 --- a/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.ts +++ b/core/racing/application/use-cases/RecalculateChampionshipStandingsUseCase.ts @@ -1,20 +1,20 @@ -import { ChampionshipStanding } from '../../domain/entities/championship/ChampionshipStanding'; import { ChampionshipAggregator } from '@core/racing/domain/services/ChampionshipAggregator'; import { EventScoringService } from '@core/racing/domain/services/EventScoringService'; import type { ChampionshipConfig } from '@core/racing/domain/types/ChampionshipConfig'; import type { SessionType } from '@core/racing/domain/types/SessionType'; +import { ChampionshipStanding } from '../../domain/entities/championship/ChampionshipStanding'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { ChampionshipStandingRepository } from '../../domain/repositories/ChampionshipStandingRepository'; import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { LeagueScoringConfigRepository } from '../../domain/repositories/LeagueScoringConfigRepository'; +import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; import { ResultRepository } from '../../domain/repositories/ResultRepository'; -import { PenaltyRepository } from '../../domain/repositories/PenaltyRepository'; -import { ChampionshipStandingRepository } from '../../domain/repositories/ChampionshipStandingRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; export type RecalculateChampionshipStandingsInput = { leagueId: string; diff --git a/core/racing/application/use-cases/RecomputeTeamRatingSnapshotUseCase.test.ts b/core/racing/application/use-cases/RecomputeTeamRatingSnapshotUseCase.test.ts index 0b0af1fa9..97535c460 100644 --- a/core/racing/application/use-cases/RecomputeTeamRatingSnapshotUseCase.test.ts +++ b/core/racing/application/use-cases/RecomputeTeamRatingSnapshotUseCase.test.ts @@ -1,11 +1,13 @@ -import { RecomputeTeamRatingSnapshotUseCase } from './RecomputeTeamRatingSnapshotUseCase'; +import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; -import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; -import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '@core/racing/domain/value-objects/TeamRatingDimensionKey'; import { TeamRatingDelta } from '@core/racing/domain/value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '@core/racing/domain/value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; +import { PaginatedResult } from '../../domain/repositories/TeamRatingEventRepository'; import { TeamRating } from '../../domain/value-objects/TeamRating'; +import { RecomputeTeamRatingSnapshotUseCase } from './RecomputeTeamRatingSnapshotUseCase'; // Mock repositories class MockTeamRatingEventRepository implements TeamRatingEventRepository { diff --git a/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.test.ts b/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.test.ts index b73e18fd0..268231199 100644 --- a/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.test.ts +++ b/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.test.ts @@ -1,13 +1,14 @@ -import { RecordTeamRaceRatingEventsUseCase } from './RecordTeamRaceRatingEventsUseCase'; -import { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; +import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; -import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; import { TeamDrivingRaceFactsDto } from '@core/racing/domain/services/TeamDrivingRatingEventFactory'; -import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; +import { PaginatedResult } from '../../domain/repositories/TeamRatingEventRepository'; import { TeamRating } from '../../domain/value-objects/TeamRating'; -import { describe, it, expect, beforeEach, afterEach } from 'vitest'; +import { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; +import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; +import { RecordTeamRaceRatingEventsUseCase } from './RecordTeamRaceRatingEventsUseCase'; // Mock repositories class MockTeamRaceResultsProvider implements TeamRaceResultsProvider { diff --git a/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.ts b/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.ts index e26b7850b..8bd0410e2 100644 --- a/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.ts +++ b/core/racing/application/use-cases/RecordTeamRaceRatingEventsUseCase.ts @@ -1,9 +1,9 @@ -import type { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; -import { TeamDrivingRatingEventFactory } from '@core/racing/domain/services/TeamDrivingRatingEventFactory'; -import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; -import { RecordTeamRaceRatingEventsInput, RecordTeamRaceRatingEventsOutput } from '../dtos/RecordTeamRaceRatingEventsDto'; import type { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import type { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; +import { TeamDrivingRatingEventFactory } from '@core/racing/domain/services/TeamDrivingRatingEventFactory'; +import { RecordTeamRaceRatingEventsInput, RecordTeamRaceRatingEventsOutput } from '../dtos/RecordTeamRaceRatingEventsDto'; +import type { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; +import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; /** * Use Case: RecordTeamRaceRatingEventsUseCase diff --git a/core/racing/application/use-cases/RegisterForRaceUseCase.test.ts b/core/racing/application/use-cases/RegisterForRaceUseCase.test.ts index a094f1698..c05f967b5 100644 --- a/core/racing/application/use-cases/RegisterForRaceUseCase.test.ts +++ b/core/racing/application/use-cases/RegisterForRaceUseCase.test.ts @@ -1,14 +1,15 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - RegisterForRaceErrorCode, - RegisterForRaceInput, - RegisterForRaceResult, - RegisterForRaceUseCase, -} from './RegisterForRaceUseCase'; -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Logger } from 'vite'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import { + RegisterForRaceErrorCode, + RegisterForRaceInput, + RegisterForRaceResult, + RegisterForRaceUseCase, +} from './RegisterForRaceUseCase'; describe('RegisterForRaceUseCase', () => { let useCase: RegisterForRaceUseCase; diff --git a/core/racing/application/use-cases/RegisterForRaceUseCase.ts b/core/racing/application/use-cases/RegisterForRaceUseCase.ts index ea2d26cbc..dde6316ee 100644 --- a/core/racing/application/use-cases/RegisterForRaceUseCase.ts +++ b/core/racing/application/use-cases/RegisterForRaceUseCase.ts @@ -1,6 +1,6 @@ -import type { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; -import type { LeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; import { RaceRegistration } from '@core/racing/domain/entities/RaceRegistration'; +import type { LeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; +import type { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; import { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; diff --git a/core/racing/application/use-cases/RejectLeagueJoinRequestUseCase.test.ts b/core/racing/application/use-cases/RejectLeagueJoinRequestUseCase.test.ts index eb2a9a5fc..f61cf5ebb 100644 --- a/core/racing/application/use-cases/RejectLeagueJoinRequestUseCase.test.ts +++ b/core/racing/application/use-cases/RejectLeagueJoinRequestUseCase.test.ts @@ -1,9 +1,9 @@ -import { describe, it, expect, vi, type Mock, beforeEach } from 'vitest'; -import { - RejectLeagueJoinRequestUseCase, -} from './RejectLeagueJoinRequestUseCase'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { + RejectLeagueJoinRequestUseCase, +} from './RejectLeagueJoinRequestUseCase'; describe('RejectLeagueJoinRequestUseCase', () => { let leagueMembershipRepository: { diff --git a/core/racing/application/use-cases/RejectSponsorshipRequestUseCase.test.ts b/core/racing/application/use-cases/RejectSponsorshipRequestUseCase.test.ts index 9b88885b2..010d03cc6 100644 --- a/core/racing/application/use-cases/RejectSponsorshipRequestUseCase.test.ts +++ b/core/racing/application/use-cases/RejectSponsorshipRequestUseCase.test.ts @@ -2,6 +2,7 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { SponsorshipRequestRepository } from '../../domain/repositories/SponsorshipRequestRepository'; import { RejectSponsorshipRequestUseCase, type RejectSponsorshipRequestErrorCode, diff --git a/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.test.ts b/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.test.ts index 8f40e8b75..721cceba5 100644 --- a/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.test.ts +++ b/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.test.ts @@ -1,13 +1,13 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - RejectTeamJoinRequestUseCase, - type RejectTeamJoinRequestInput, - type RejectTeamJoinRequestErrorCode, -} from './RejectTeamJoinRequestUseCase'; +import type { Logger } from '@core/shared/domain/Logger'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; import type { TeamRepository } from '../../domain/repositories/TeamRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { Logger } from '@core/shared/domain/Logger'; +import { + RejectTeamJoinRequestUseCase, + type RejectTeamJoinRequestErrorCode, + type RejectTeamJoinRequestInput, +} from './RejectTeamJoinRequestUseCase'; interface TeamRepositoryMock { findById: Mock; diff --git a/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.ts b/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.ts index a80300813..31cf5539c 100644 --- a/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.ts +++ b/core/racing/application/use-cases/RejectTeamJoinRequestUseCase.ts @@ -1,8 +1,8 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { TeamRepository } from '../../domain/repositories/TeamRepository'; import { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import { TeamRepository } from '../../domain/repositories/TeamRepository'; import type { TeamJoinRequest } from '../../domain/types/TeamMembership'; export interface RejectTeamJoinRequestInput { diff --git a/core/racing/application/use-cases/RemoveLeagueMemberUseCase.test.ts b/core/racing/application/use-cases/RemoveLeagueMemberUseCase.test.ts index a384c963d..72c7dff01 100644 --- a/core/racing/application/use-cases/RemoveLeagueMemberUseCase.test.ts +++ b/core/racing/application/use-cases/RemoveLeagueMemberUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { - RemoveLeagueMemberUseCase, - type RemoveLeagueMemberInput, - type RemoveLeagueMemberErrorCode, -} from './RemoveLeagueMemberUseCase'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { + RemoveLeagueMemberUseCase, + type RemoveLeagueMemberErrorCode, + type RemoveLeagueMemberInput, +} from './RemoveLeagueMemberUseCase'; describe('RemoveLeagueMemberUseCase', () => { let useCase: RemoveLeagueMemberUseCase; diff --git a/core/racing/application/use-cases/RemoveLeagueMemberUseCase.ts b/core/racing/application/use-cases/RemoveLeagueMemberUseCase.ts index f8b02b759..6288ab30d 100644 --- a/core/racing/application/use-cases/RemoveLeagueMemberUseCase.ts +++ b/core/racing/application/use-cases/RemoveLeagueMemberUseCase.ts @@ -1,7 +1,7 @@ -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; export interface RemoveLeagueMemberInput { leagueId: string; diff --git a/core/racing/application/use-cases/ReopenRaceUseCase.test.ts b/core/racing/application/use-cases/ReopenRaceUseCase.test.ts index 041a19317..3101a788d 100644 --- a/core/racing/application/use-cases/ReopenRaceUseCase.test.ts +++ b/core/racing/application/use-cases/ReopenRaceUseCase.test.ts @@ -1,14 +1,14 @@ +import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Race } from '../../domain/entities/Race'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import { SessionType } from '../../domain/value-objects/SessionType'; import { ReopenRaceUseCase, type ReopenRaceErrorCode, type ReopenRaceInput } from './ReopenRaceUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { Logger } from '@core/shared/domain/Logger'; describe('ReopenRaceUseCase', () => { let raceRepository: { diff --git a/core/racing/application/use-cases/ReopenRaceUseCase.ts b/core/racing/application/use-cases/ReopenRaceUseCase.ts index 3c8660a21..f6185c909 100644 --- a/core/racing/application/use-cases/ReopenRaceUseCase.ts +++ b/core/racing/application/use-cases/ReopenRaceUseCase.ts @@ -1,8 +1,8 @@ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Race } from '../../domain/entities/Race'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { Logger } from '@core/shared/domain/Logger'; export type ReopenRaceInput = { raceId: string; diff --git a/core/racing/application/use-cases/RequestProtestDefenseUseCase.test.ts b/core/racing/application/use-cases/RequestProtestDefenseUseCase.test.ts index 3bd1125c3..c906d75a2 100644 --- a/core/racing/application/use-cases/RequestProtestDefenseUseCase.test.ts +++ b/core/racing/application/use-cases/RequestProtestDefenseUseCase.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect, beforeEach, vi, type Mock } from 'vitest'; -import { - RequestProtestDefenseUseCase, - type RequestProtestDefenseInput, - type RequestProtestDefenseErrorCode, -} from './RequestProtestDefenseUseCase'; +import type { Logger } from '@core/shared/application/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { Result } from '@core/shared/domain/Result'; -import type { Logger } from '@core/shared/application/Logger'; +import { + RequestProtestDefenseUseCase, + type RequestProtestDefenseErrorCode, + type RequestProtestDefenseInput, +} from './RequestProtestDefenseUseCase'; describe('RequestProtestDefenseUseCase', () => { let useCase: RequestProtestDefenseUseCase; diff --git a/core/racing/application/use-cases/RequestProtestDefenseUseCase.ts b/core/racing/application/use-cases/RequestProtestDefenseUseCase.ts index 74940f3a5..2bc4ac9bc 100644 --- a/core/racing/application/use-cases/RequestProtestDefenseUseCase.ts +++ b/core/racing/application/use-cases/RequestProtestDefenseUseCase.ts @@ -5,13 +5,13 @@ * This will trigger a notification to the accused driver. */ +import { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { isLeagueStewardOrHigherRole } from '../../domain/types/LeagueRoles'; -import { Result } from '@core/shared/domain/Result'; -import { Logger } from '@core/shared/domain/Logger'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; export type RequestProtestDefenseInput = { protestId: string; diff --git a/core/racing/application/use-cases/ReviewProtestUseCase.test.ts b/core/racing/application/use-cases/ReviewProtestUseCase.test.ts index 7e39e29aa..1fc2a8097 100644 --- a/core/racing/application/use-cases/ReviewProtestUseCase.test.ts +++ b/core/racing/application/use-cases/ReviewProtestUseCase.test.ts @@ -1,9 +1,10 @@ -import { describe, it, expect, beforeEach, vi, Mock } from 'vitest'; -import { ReviewProtestUseCase, type ReviewProtestInput, type ReviewProtestErrorCode } from './ReviewProtestUseCase'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { Logger } from 'vite'; +import { beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { ReviewProtestUseCase, type ReviewProtestErrorCode, type ReviewProtestInput } from './ReviewProtestUseCase'; describe('ReviewProtestUseCase', () => { let useCase: ReviewProtestUseCase; diff --git a/core/racing/application/use-cases/ReviewProtestUseCase.ts b/core/racing/application/use-cases/ReviewProtestUseCase.ts index 017845fc2..8ba68d57c 100644 --- a/core/racing/application/use-cases/ReviewProtestUseCase.ts +++ b/core/racing/application/use-cases/ReviewProtestUseCase.ts @@ -4,12 +4,12 @@ * Allows a steward to review a protest and make a decision (uphold or dismiss). */ +import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { Logger } from '@core/shared/domain/Logger'; import { LeagueMembership } from '../../domain/entities/LeagueMembership'; diff --git a/core/racing/application/use-cases/SeasonUseCases.test.ts b/core/racing/application/use-cases/SeasonUseCases.test.ts index e56ec5f8e..34ef6de9d 100644 --- a/core/racing/application/use-cases/SeasonUseCases.test.ts +++ b/core/racing/application/use-cases/SeasonUseCases.test.ts @@ -1,22 +1,22 @@ -import { describe, it, expect, vi } from 'vitest'; +import { describe, expect, it, vi } from 'vitest'; -import { Season } from '@core/racing/domain/entities/season/Season'; -import { League } from '@core/racing/domain/entities/League'; -import type { SeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; import { - CreateSeasonForLeagueUseCase, - ListSeasonsForLeagueUseCase, - GetSeasonDetailsUseCase, - ManageSeasonLifecycleUseCase, - type CreateSeasonForLeagueCommand, - type ManageSeasonLifecycleCommand, - type CreateSeasonForLeagueErrorCode, - type ListSeasonsForLeagueErrorCode, - type GetSeasonDetailsErrorCode, - type ManageSeasonLifecycleErrorCode, - type LeagueConfigFormModel, + CreateSeasonForLeagueUseCase, + GetSeasonDetailsUseCase, + ListSeasonsForLeagueUseCase, + ManageSeasonLifecycleUseCase, + type CreateSeasonForLeagueCommand, + type CreateSeasonForLeagueErrorCode, + type GetSeasonDetailsErrorCode, + type LeagueConfigFormModel, + type ListSeasonsForLeagueErrorCode, + type ManageSeasonLifecycleCommand, + type ManageSeasonLifecycleErrorCode, } from '@core/racing/application/use-cases/SeasonUseCases'; +import { League } from '@core/racing/domain/entities/League'; +import { Season } from '@core/racing/domain/entities/season/Season'; +import type { LeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; function getUnknownString(value: unknown): string | null { diff --git a/core/racing/application/use-cases/SeasonUseCases.ts b/core/racing/application/use-cases/SeasonUseCases.ts index 917c21d27..8b30a515e 100644 --- a/core/racing/application/use-cases/SeasonUseCases.ts +++ b/core/racing/application/use-cases/SeasonUseCases.ts @@ -1,19 +1,19 @@ -import { Season } from '../../domain/entities/season/Season'; -import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { SeasonSchedule } from '../../domain/value-objects/SeasonSchedule'; -import { SeasonScoringConfig } from '../../domain/value-objects/SeasonScoringConfig'; -import { SeasonDropPolicy } from '../../domain/value-objects/SeasonDropPolicy'; -import { SeasonStewardingConfig } from '../../domain/value-objects/SeasonStewardingConfig'; -import { RaceTimeOfDay } from '../../domain/value-objects/RaceTimeOfDay'; -import { LeagueTimezone } from '../../domain/value-objects/LeagueTimezone'; -import { RecurrenceStrategyFactory } from '../../domain/value-objects/RecurrenceStrategy'; -import { WeekdaySet } from '../../domain/value-objects/WeekdaySet'; -import { MonthlyRecurrencePattern } from '../../domain/value-objects/MonthlyRecurrencePattern'; -import type { Weekday } from '../../domain/types/Weekday'; -import { v4 as uuidv4 } from 'uuid'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { v4 as uuidv4 } from 'uuid'; +import { Season } from '../../domain/entities/season/Season'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import type { Weekday } from '../../domain/types/Weekday'; +import { LeagueTimezone } from '../../domain/value-objects/LeagueTimezone'; +import { MonthlyRecurrencePattern } from '../../domain/value-objects/MonthlyRecurrencePattern'; +import { RaceTimeOfDay } from '../../domain/value-objects/RaceTimeOfDay'; +import { RecurrenceStrategyFactory } from '../../domain/value-objects/RecurrenceStrategy'; +import { SeasonDropPolicy } from '../../domain/value-objects/SeasonDropPolicy'; +import { SeasonSchedule } from '../../domain/value-objects/SeasonSchedule'; +import { SeasonScoringConfig } from '../../domain/value-objects/SeasonScoringConfig'; +import { SeasonStewardingConfig } from '../../domain/value-objects/SeasonStewardingConfig'; +import { WeekdaySet } from '../../domain/value-objects/WeekdaySet'; /** * Input, result and error models shared across Season-focused use cases. */ diff --git a/core/racing/application/use-cases/SendFinalResultsUseCase.test.ts b/core/racing/application/use-cases/SendFinalResultsUseCase.test.ts index fa630bf5c..e210adcfa 100644 --- a/core/racing/application/use-cases/SendFinalResultsUseCase.test.ts +++ b/core/racing/application/use-cases/SendFinalResultsUseCase.test.ts @@ -1,17 +1,17 @@ +import type { Logger } from '@core/shared/application/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; -import { - SendFinalResultsUseCase, - type SendFinalResultsInput, - type SendFinalResultsErrorCode, -} from './SendFinalResultsUseCase'; import type { NotificationService } from '../../../notifications/application/ports/NotificationService'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { RaceEventRepository } from '../../domain/repositories/RaceEventRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { Result } from '@core/shared/domain/Result'; -import type { Logger } from '@core/shared/application/Logger'; +import { + SendFinalResultsUseCase, + type SendFinalResultsErrorCode, + type SendFinalResultsInput, +} from './SendFinalResultsUseCase'; const unwrapError = ( result: Result>, diff --git a/core/racing/application/use-cases/SendFinalResultsUseCase.ts b/core/racing/application/use-cases/SendFinalResultsUseCase.ts index 431960e9e..27e13e102 100644 --- a/core/racing/application/use-cases/SendFinalResultsUseCase.ts +++ b/core/racing/application/use-cases/SendFinalResultsUseCase.ts @@ -1,4 +1,3 @@ -import { Position } from '../../domain/entities/result/Position'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; @@ -6,12 +5,13 @@ import type { NotificationService } from '../../../notifications/application/por import type { NotificationType } from '../../../notifications/domain/types/NotificationTypes'; import type { RaceEvent } from '../../domain/entities/RaceEvent'; import { IncidentCount } from '../../domain/entities/result/IncidentCount'; +import { Position } from '../../domain/entities/result/Position'; import type { Result as RaceResult } from '../../domain/entities/result/Result'; -import { isLeagueStewardOrHigherRole } from '../../domain/types/LeagueRoles'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { RaceEventRepository } from '../../domain/repositories/RaceEventRepository'; import { ResultRepository } from '../../domain/repositories/ResultRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { isLeagueStewardOrHigherRole } from '../../domain/types/LeagueRoles'; export type SendFinalResultsInput = { leagueId: string; diff --git a/core/racing/application/use-cases/SendPerformanceSummaryUseCase.test.ts b/core/racing/application/use-cases/SendPerformanceSummaryUseCase.test.ts index 8eb161623..28d6d6784 100644 --- a/core/racing/application/use-cases/SendPerformanceSummaryUseCase.test.ts +++ b/core/racing/application/use-cases/SendPerformanceSummaryUseCase.test.ts @@ -1,18 +1,18 @@ +import type { Logger } from '@core/shared/application/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; -import { - SendPerformanceSummaryUseCase, - type SendPerformanceSummaryInput, - type SendPerformanceSummaryErrorCode, -} from './SendPerformanceSummaryUseCase'; import type { NotificationService } from '../../../notifications/application/ports/NotificationService'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { RaceEventRepository } from '../../domain/repositories/RaceEventRepository'; import type { ResultRepository } from '../../domain/repositories/ResultRepository'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { Result } from '@core/shared/domain/Result'; -import type { Logger } from '@core/shared/application/Logger'; +import { + SendPerformanceSummaryUseCase, + type SendPerformanceSummaryErrorCode, + type SendPerformanceSummaryInput, +} from './SendPerformanceSummaryUseCase'; const unwrapError = ( result: Result>, diff --git a/core/racing/application/use-cases/SendPerformanceSummaryUseCase.ts b/core/racing/application/use-cases/SendPerformanceSummaryUseCase.ts index 495fcf7b8..47ac0ec40 100644 --- a/core/racing/application/use-cases/SendPerformanceSummaryUseCase.ts +++ b/core/racing/application/use-cases/SendPerformanceSummaryUseCase.ts @@ -1,4 +1,3 @@ -import { isLeagueStewardOrHigherRole } from '../../domain/types/LeagueRoles'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; @@ -8,11 +7,12 @@ import type { RaceEvent } from '../../domain/entities/RaceEvent'; import { IncidentCount } from '../../domain/entities/result/IncidentCount'; import { Position } from '../../domain/entities/result/Position'; import type { Result as RaceResult } from '../../domain/entities/result/Result'; +import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { RaceEventRepository } from '../../domain/repositories/RaceEventRepository'; import { ResultRepository } from '../../domain/repositories/ResultRepository'; -import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { isLeagueStewardOrHigherRole } from '../../domain/types/LeagueRoles'; export type SendPerformanceSummaryInput = { leagueId: string; diff --git a/core/racing/application/use-cases/SubmitProtestDefenseUseCase.test.ts b/core/racing/application/use-cases/SubmitProtestDefenseUseCase.test.ts index 4a114b7cf..adb38483d 100644 --- a/core/racing/application/use-cases/SubmitProtestDefenseUseCase.test.ts +++ b/core/racing/application/use-cases/SubmitProtestDefenseUseCase.test.ts @@ -2,14 +2,14 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi } from 'vitest'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; +import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; import { SubmitProtestDefenseUseCase, type SubmitProtestDefenseErrorCode, type SubmitProtestDefenseInput, type SubmitProtestDefenseResult, } from './SubmitProtestDefenseUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; interface MockProtest { id: string; diff --git a/core/racing/application/use-cases/SubmitProtestDefenseUseCase.ts b/core/racing/application/use-cases/SubmitProtestDefenseUseCase.ts index c785be8a0..8f033a642 100644 --- a/core/racing/application/use-cases/SubmitProtestDefenseUseCase.ts +++ b/core/racing/application/use-cases/SubmitProtestDefenseUseCase.ts @@ -4,8 +4,8 @@ * Allows the accused driver to submit their defense statement for a protest. */ -import { Result } from '@core/shared/domain/Result'; import { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import type { ProtestRepository } from '../../domain/repositories/ProtestRepository'; diff --git a/core/racing/application/use-cases/TeamRankingUseCase.test.ts b/core/racing/application/use-cases/TeamRankingUseCase.test.ts index e5658c372..8189814ce 100644 --- a/core/racing/application/use-cases/TeamRankingUseCase.test.ts +++ b/core/racing/application/use-cases/TeamRankingUseCase.test.ts @@ -4,6 +4,7 @@ import type { TeamRepository } from '@core/racing/domain/repositories/TeamReposi import { TeamRatingSnapshot } from '@core/racing/domain/services/TeamRatingSnapshotCalculator'; import { TeamRatingValue } from '@core/racing/domain/value-objects/TeamRatingValue'; import type { Logger } from '@core/shared/domain/Logger'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { TeamRankingUseCase } from './TeamRankingUseCase'; // Mock repositories diff --git a/core/racing/application/use-cases/TeamRatingFactoryUseCase.test.ts b/core/racing/application/use-cases/TeamRatingFactoryUseCase.test.ts index 3e65cff83..5470db949 100644 --- a/core/racing/application/use-cases/TeamRatingFactoryUseCase.test.ts +++ b/core/racing/application/use-cases/TeamRatingFactoryUseCase.test.ts @@ -1,5 +1,6 @@ import { TeamDrivingRaceFactsDto } from '@core/racing/domain/services/TeamDrivingRatingEventFactory'; import type { Logger } from '@core/shared/domain/Logger'; +import { beforeEach, describe, expect, it } from 'vitest'; import type { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; import { TeamRatingFactoryUseCase } from './TeamRatingFactoryUseCase'; diff --git a/core/racing/application/use-cases/TeamRatingFactoryUseCase.ts b/core/racing/application/use-cases/TeamRatingFactoryUseCase.ts index e29425a42..84ce5599b 100644 --- a/core/racing/application/use-cases/TeamRatingFactoryUseCase.ts +++ b/core/racing/application/use-cases/TeamRatingFactoryUseCase.ts @@ -6,12 +6,12 @@ * Mirrors the user rating factory pattern. */ -import { TeamDrivingRatingEventFactory } from '../../domain/services/TeamDrivingRatingEventFactory'; import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingDelta } from '@core/racing/domain/value-objects/TeamRatingDelta'; import { TeamRatingDimensionKey } from '@core/racing/domain/value-objects/TeamRatingDimensionKey'; import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; import type { Logger } from '@core/shared/domain/Logger'; +import { TeamDrivingRatingEventFactory } from '../../domain/services/TeamDrivingRatingEventFactory'; import { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; export interface TeamRatingFactoryInput { diff --git a/core/racing/application/use-cases/TeamRatingIntegrationAdapter.test.ts b/core/racing/application/use-cases/TeamRatingIntegrationAdapter.test.ts index 38fea664c..ee7b9ff17 100644 --- a/core/racing/application/use-cases/TeamRatingIntegrationAdapter.test.ts +++ b/core/racing/application/use-cases/TeamRatingIntegrationAdapter.test.ts @@ -1,10 +1,13 @@ -import { TeamRatingIntegrationAdapter } from './TeamRatingIntegrationAdapter'; -import { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; +import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; import { TeamDrivingRaceFactsDto } from '@core/racing/domain/services/TeamDrivingRatingEventFactory'; -import { TeamRatingEvent } from '@core/racing/domain/entities/TeamRatingEvent'; import { TeamRatingEventId } from '@core/racing/domain/value-objects/TeamRatingEventId'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; +import { PaginatedResult } from '../../domain/repositories/TeamRatingEventRepository'; +import { TeamRating } from '../../domain/value-objects/TeamRating'; +import { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; +import { TeamRatingIntegrationAdapter } from './TeamRatingIntegrationAdapter'; // Mock repositories class MockTeamRaceResultsProvider implements TeamRaceResultsProvider { diff --git a/core/racing/application/use-cases/TeamRatingIntegrationAdapter.ts b/core/racing/application/use-cases/TeamRatingIntegrationAdapter.ts index e81024bcf..f09e930b7 100644 --- a/core/racing/application/use-cases/TeamRatingIntegrationAdapter.ts +++ b/core/racing/application/use-cases/TeamRatingIntegrationAdapter.ts @@ -1,7 +1,7 @@ -import type { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; import type { TeamRatingEventRepository } from '@core/racing/domain/repositories/TeamRatingEventRepository'; import type { TeamRatingRepository } from '@core/racing/domain/repositories/TeamRatingRepository'; import { TeamDrivingRatingEventFactory } from '@core/racing/domain/services/TeamDrivingRatingEventFactory'; +import type { TeamRaceResultsProvider } from '../ports/TeamRaceResultsProvider'; import { AppendTeamRatingEventsUseCase } from './AppendTeamRatingEventsUseCase'; /** diff --git a/core/racing/application/use-cases/TransferLeagueOwnershipUseCase.test.ts b/core/racing/application/use-cases/TransferLeagueOwnershipUseCase.test.ts index 7cb68c88c..cf8719dc9 100644 --- a/core/racing/application/use-cases/TransferLeagueOwnershipUseCase.test.ts +++ b/core/racing/application/use-cases/TransferLeagueOwnershipUseCase.test.ts @@ -1,15 +1,15 @@ import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { League } from '../../domain/entities/League'; +import type { LeagueMembership } from '../../domain/entities/LeagueMembership'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { TransferLeagueOwnershipUseCase, type TransferLeagueOwnershipErrorCode, type TransferLeagueOwnershipInput } from './TransferLeagueOwnershipUseCase'; -import type { LeagueRepository } from '../../domain/repositories/LeagueRepository'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; -import type { League } from '../../domain/entities/League'; -import type { LeagueMembership } from '../../domain/entities/LeagueMembership'; describe('TransferLeagueOwnershipUseCase', () => { let leagueRepository: { diff --git a/core/racing/application/use-cases/UnpublishLeagueSeasonScheduleUseCase.test.ts b/core/racing/application/use-cases/UnpublishLeagueSeasonScheduleUseCase.test.ts index 1f336971f..09d7799b8 100644 --- a/core/racing/application/use-cases/UnpublishLeagueSeasonScheduleUseCase.test.ts +++ b/core/racing/application/use-cases/UnpublishLeagueSeasonScheduleUseCase.test.ts @@ -1,12 +1,13 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Season } from '../../domain/entities/season/Season'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { Logger } from 'vite'; import { - UnpublishLeagueSeasonScheduleUseCase, - type UnpublishLeagueSeasonScheduleErrorCode, + UnpublishLeagueSeasonScheduleUseCase, + type UnpublishLeagueSeasonScheduleErrorCode, } from './UnpublishLeagueSeasonScheduleUseCase'; function createLogger(): Logger { diff --git a/core/racing/application/use-cases/UpdateDriverProfileUseCase.test.ts b/core/racing/application/use-cases/UpdateDriverProfileUseCase.test.ts index 2b7be2c26..bead38282 100644 --- a/core/racing/application/use-cases/UpdateDriverProfileUseCase.test.ts +++ b/core/racing/application/use-cases/UpdateDriverProfileUseCase.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; -import { - UpdateDriverProfileUseCase, - type UpdateDriverProfileInput, - type UpdateDriverProfileErrorCode, -} from './UpdateDriverProfileUseCase'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; -import type { Driver } from '../../domain/entities/Driver'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { Result } from '@core/shared/domain/Result'; import type { Logger } from '@core/shared/application/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; +import type { Driver } from '../../domain/entities/Driver'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { + UpdateDriverProfileUseCase, + type UpdateDriverProfileErrorCode, + type UpdateDriverProfileInput, +} from './UpdateDriverProfileUseCase'; describe('UpdateDriverProfileUseCase', () => { let driverRepository: DriverRepository; diff --git a/core/racing/application/use-cases/UpdateDriverProfileUseCase.ts b/core/racing/application/use-cases/UpdateDriverProfileUseCase.ts index e52d7b81d..4e80eb0ee 100644 --- a/core/racing/application/use-cases/UpdateDriverProfileUseCase.ts +++ b/core/racing/application/use-cases/UpdateDriverProfileUseCase.ts @@ -1,9 +1,9 @@ -import { Result } from '@core/shared/domain/Result'; import type { UseCase } from '@core/shared/application/UseCase'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Logger } from '@core/shared/domain/Logger'; -import type { DriverRepository } from '../../domain/repositories/DriverRepository'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { Driver } from '../../domain/entities/Driver'; +import type { DriverRepository } from '../../domain/repositories/DriverRepository'; export type UpdateDriverProfileInput = { driverId: string; diff --git a/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.test.ts b/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.test.ts index b91e6d591..f43ded48f 100644 --- a/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.test.ts +++ b/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, vi } from 'vitest'; -import { - UpdateLeagueMemberRoleUseCase, - type UpdateLeagueMemberRoleInput, - type UpdateLeagueMemberRoleErrorCode, -} from './UpdateLeagueMemberRoleUseCase'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { describe, expect, it, vi } from 'vitest'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; +import { + UpdateLeagueMemberRoleUseCase, + type UpdateLeagueMemberRoleErrorCode, + type UpdateLeagueMemberRoleInput, +} from './UpdateLeagueMemberRoleUseCase'; describe('UpdateLeagueMemberRoleUseCase', () => { it('updates league member role successfully', async () => { diff --git a/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.ts b/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.ts index ed462dc87..55bfcd0d9 100644 --- a/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.ts +++ b/core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase.ts @@ -1,8 +1,8 @@ import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; import { LeagueMembership } from '../../domain/entities/LeagueMembership'; import type { MembershipRoleValue } from '../../domain/entities/MembershipRole'; +import type { LeagueMembershipRepository } from '../../domain/repositories/LeagueMembershipRepository'; export type UpdateLeagueMemberRoleInput = { leagueId: string; diff --git a/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.test.ts b/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.test.ts index a198bf681..e8225f7ae 100644 --- a/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.test.ts +++ b/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.test.ts @@ -1,14 +1,15 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import { Race } from '../../domain/entities/Race'; import { Season } from '../../domain/entities/season/Season'; import type { RaceRepository } from '../../domain/repositories/RaceRepository'; import type { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { Logger } from 'vite'; import { - UpdateLeagueSeasonScheduleRaceUseCase, - type UpdateLeagueSeasonScheduleRaceErrorCode, + UpdateLeagueSeasonScheduleRaceUseCase, + type UpdateLeagueSeasonScheduleRaceErrorCode, } from './UpdateLeagueSeasonScheduleRaceUseCase'; function createLogger(): Logger { diff --git a/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.ts b/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.ts index bc922171a..ffaeec1cd 100644 --- a/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.ts +++ b/core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase.ts @@ -2,11 +2,11 @@ import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import { SeasonScheduleGenerator } from '../../domain/services/SeasonScheduleGenerator'; import { Race } from '../../domain/entities/Race'; import type { Season } from '../../domain/entities/season/Season'; -import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; import { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { SeasonRepository } from '../../domain/repositories/SeasonRepository'; +import { SeasonScheduleGenerator } from '../../domain/services/SeasonScheduleGenerator'; export type UpdateLeagueSeasonScheduleRaceInput = { leagueId: string; diff --git a/core/racing/application/use-cases/UpdateTeamUseCase.test.ts b/core/racing/application/use-cases/UpdateTeamUseCase.test.ts index 6f5ada792..e30fe1b42 100644 --- a/core/racing/application/use-cases/UpdateTeamUseCase.test.ts +++ b/core/racing/application/use-cases/UpdateTeamUseCase.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect, vi } from 'vitest'; -import { UpdateTeamUseCase, type UpdateTeamInput, type UpdateTeamErrorCode } from './UpdateTeamUseCase'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { describe, expect, it, vi } from 'vitest'; import type { TeamMembershipRepository } from '../../domain/repositories/TeamMembershipRepository'; +import type { TeamRepository } from '../../domain/repositories/TeamRepository'; +import { UpdateTeamUseCase, type UpdateTeamErrorCode, type UpdateTeamInput } from './UpdateTeamUseCase'; describe('UpdateTeamUseCase', () => { it('updates team successfully', async () => { diff --git a/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.test.ts b/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.test.ts index fdeb6b22c..13128b9ef 100644 --- a/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.test.ts +++ b/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.test.ts @@ -10,6 +10,7 @@ import { type WithdrawFromLeagueWalletInput } from './WithdrawFromLeagueWalletUseCase'; +import { Transaction } from 'electron'; import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { LeagueWalletRepository } from '../../domain/repositories/LeagueWalletRepository'; import { TransactionRepository } from '../../domain/repositories/TransactionRepository'; diff --git a/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.ts b/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.ts index 0f13fb37d..8ebeb436b 100644 --- a/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.ts +++ b/core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase.ts @@ -1,13 +1,13 @@ -import { LeagueWalletId } from '../../domain/entities/league-wallet/LeagueWalletId'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { LeagueWalletId } from '../../domain/entities/league-wallet/LeagueWalletId'; import { Transaction } from '../../domain/entities/league-wallet/Transaction'; import { TransactionId } from '../../domain/entities/league-wallet/TransactionId'; -import { Money } from '../../domain/value-objects/Money'; import { LeagueRepository } from '../../domain/repositories/LeagueRepository'; import { LeagueWalletRepository } from '../../domain/repositories/LeagueWalletRepository'; import { TransactionRepository } from '../../domain/repositories/TransactionRepository'; +import { Money } from '../../domain/value-objects/Money'; export type WithdrawFromLeagueWalletInput = { leagueId: string; diff --git a/core/racing/application/use-cases/WithdrawFromRaceUseCase.test.ts b/core/racing/application/use-cases/WithdrawFromRaceUseCase.test.ts index 27cdbc229..1a7406ad4 100644 --- a/core/racing/application/use-cases/WithdrawFromRaceUseCase.test.ts +++ b/core/racing/application/use-cases/WithdrawFromRaceUseCase.test.ts @@ -1,13 +1,13 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; -import { - WithdrawFromRaceUseCase, - type WithdrawFromRaceInput, - type WithdrawFromRaceErrorCode, -} from './WithdrawFromRaceUseCase'; -import type { RaceRepository } from '../../domain/repositories/RaceRepository'; -import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; import type { Logger } from '@core/shared/domain/Logger'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; +import type { RaceRegistrationRepository } from '../../domain/repositories/RaceRegistrationRepository'; +import type { RaceRepository } from '../../domain/repositories/RaceRepository'; +import { + WithdrawFromRaceUseCase, + type WithdrawFromRaceErrorCode, + type WithdrawFromRaceInput, +} from './WithdrawFromRaceUseCase'; describe('WithdrawFromRaceUseCase', () => { let raceRepository: { findById: ReturnType }; diff --git a/core/racing/application/use-cases/WithdrawFromRaceUseCase.ts b/core/racing/application/use-cases/WithdrawFromRaceUseCase.ts index 530ec964d..53bf58658 100644 --- a/core/racing/application/use-cases/WithdrawFromRaceUseCase.ts +++ b/core/racing/application/use-cases/WithdrawFromRaceUseCase.ts @@ -1,8 +1,8 @@ -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { RaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; import type { RaceRepository } from '@core/racing/domain/repositories/RaceRepository'; import type { Logger } from '@core/shared/domain/Logger'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; export type WithdrawFromRaceInput = { raceId: string; diff --git a/core/racing/domain/entities/AppliedAt.test.ts b/core/racing/domain/entities/AppliedAt.test.ts index e68ce120a..4e349209b 100644 --- a/core/racing/domain/entities/AppliedAt.test.ts +++ b/core/racing/domain/entities/AppliedAt.test.ts @@ -1,5 +1,6 @@ -import { AppliedAt } from './AppliedAt'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { AppliedAt } from './AppliedAt'; describe('AppliedAt', () => { describe('create', () => { diff --git a/core/racing/domain/entities/Car.test.ts b/core/racing/domain/entities/Car.test.ts index c62e82774..edcd5eb6b 100644 --- a/core/racing/domain/entities/Car.test.ts +++ b/core/racing/domain/entities/Car.test.ts @@ -1,5 +1,6 @@ -import { Car } from './Car'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { Car } from './Car'; describe('Car', () => { describe('create', () => { diff --git a/core/racing/domain/entities/CarClass.test.ts b/core/racing/domain/entities/CarClass.test.ts index 1d0b2b40f..654084f61 100644 --- a/core/racing/domain/entities/CarClass.test.ts +++ b/core/racing/domain/entities/CarClass.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/CarClass'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/CarClass.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/CarId.test.ts b/core/racing/domain/entities/CarId.test.ts index cbe440dd1..4894f44e6 100644 --- a/core/racing/domain/entities/CarId.test.ts +++ b/core/racing/domain/entities/CarId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/CarId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/CarId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/CarLicense.test.ts b/core/racing/domain/entities/CarLicense.test.ts index 049b7633a..7ffbe9bd7 100644 --- a/core/racing/domain/entities/CarLicense.test.ts +++ b/core/racing/domain/entities/CarLicense.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/CarLicense'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/CarLicense.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/CarName.test.ts b/core/racing/domain/entities/CarName.test.ts index 64ebc87ee..618bca630 100644 --- a/core/racing/domain/entities/CarName.test.ts +++ b/core/racing/domain/entities/CarName.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/CarName'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/CarName.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/DecisionNotes.test.ts b/core/racing/domain/entities/DecisionNotes.test.ts index 8c11a9cef..effecc986 100644 --- a/core/racing/domain/entities/DecisionNotes.test.ts +++ b/core/racing/domain/entities/DecisionNotes.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/DecisionNotes'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/DecisionNotes.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/DefenseStatement.test.ts b/core/racing/domain/entities/DefenseStatement.test.ts index 61dc2453b..443dcfcd9 100644 --- a/core/racing/domain/entities/DefenseStatement.test.ts +++ b/core/racing/domain/entities/DefenseStatement.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/DefenseStatement'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/DefenseStatement.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Driver.test.ts b/core/racing/domain/entities/Driver.test.ts index c1778f99f..c91970209 100644 --- a/core/racing/domain/entities/Driver.test.ts +++ b/core/racing/domain/entities/Driver.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Driver } from './Driver'; describe('Driver', () => { diff --git a/core/racing/domain/entities/DriverId.test.ts b/core/racing/domain/entities/DriverId.test.ts index 91312c678..7bb922569 100644 --- a/core/racing/domain/entities/DriverId.test.ts +++ b/core/racing/domain/entities/DriverId.test.ts @@ -1,5 +1,6 @@ -import { DriverId } from './DriverId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { DriverId } from './DriverId'; describe('DriverId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/DriverLivery.test.ts b/core/racing/domain/entities/DriverLivery.test.ts index 0328c50b3..35cc0e281 100644 --- a/core/racing/domain/entities/DriverLivery.test.ts +++ b/core/racing/domain/entities/DriverLivery.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect } from 'vitest'; -import { DriverLivery } from './DriverLivery'; -import { LiveryDecal } from '../value-objects/LiveryDecal'; +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { DecalOverride } from '../value-objects/DecalOverride'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; +import { LiveryDecal } from '../value-objects/LiveryDecal'; +import { DriverLivery } from './DriverLivery'; describe('DriverLivery', () => { const validProps = { diff --git a/core/racing/domain/entities/FiledAt.test.ts b/core/racing/domain/entities/FiledAt.test.ts index 7678b7564..4bc9ac2cc 100644 --- a/core/racing/domain/entities/FiledAt.test.ts +++ b/core/racing/domain/entities/FiledAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/FiledAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/FiledAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Game.test.ts b/core/racing/domain/entities/Game.test.ts index c80251d5d..a05c1be4c 100644 --- a/core/racing/domain/entities/Game.test.ts +++ b/core/racing/domain/entities/Game.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Game } from './Game'; describe('Game', () => { diff --git a/core/racing/domain/entities/GameId.test.ts b/core/racing/domain/entities/GameId.test.ts index df2cee010..f7f1b25ad 100644 --- a/core/racing/domain/entities/GameId.test.ts +++ b/core/racing/domain/entities/GameId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/GameId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/GameId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Horsepower.test.ts b/core/racing/domain/entities/Horsepower.test.ts index e42dbf97b..2d79b772e 100644 --- a/core/racing/domain/entities/Horsepower.test.ts +++ b/core/racing/domain/entities/Horsepower.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/Horsepower'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/Horsepower.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/ImageUrl.test.ts b/core/racing/domain/entities/ImageUrl.test.ts index 053d3cc91..c42a447e6 100644 --- a/core/racing/domain/entities/ImageUrl.test.ts +++ b/core/racing/domain/entities/ImageUrl.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/ImageUrl'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/ImageUrl.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/IncidentDescription.test.ts b/core/racing/domain/entities/IncidentDescription.test.ts index a1c5e058f..820b5361d 100644 --- a/core/racing/domain/entities/IncidentDescription.test.ts +++ b/core/racing/domain/entities/IncidentDescription.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/IncidentDescription'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/IncidentDescription.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/IssuedAt.test.ts b/core/racing/domain/entities/IssuedAt.test.ts index 07073fa4f..699fe64ea 100644 --- a/core/racing/domain/entities/IssuedAt.test.ts +++ b/core/racing/domain/entities/IssuedAt.test.ts @@ -1,5 +1,6 @@ -import { IssuedAt } from './IssuedAt'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { IssuedAt } from './IssuedAt'; describe('IssuedAt', () => { describe('create', () => { diff --git a/core/racing/domain/entities/JoinRequest.test.ts b/core/racing/domain/entities/JoinRequest.test.ts index c403ba4a5..397f81534 100644 --- a/core/racing/domain/entities/JoinRequest.test.ts +++ b/core/racing/domain/entities/JoinRequest.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/JoinRequest'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/JoinRequest.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LapNumber.test.ts b/core/racing/domain/entities/LapNumber.test.ts index 3cb78768f..b1e9963fc 100644 --- a/core/racing/domain/entities/LapNumber.test.ts +++ b/core/racing/domain/entities/LapNumber.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LapNumber'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LapNumber.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/League.test.ts b/core/racing/domain/entities/League.test.ts index 7dc43dbd1..d088ffbd1 100644 --- a/core/racing/domain/entities/League.test.ts +++ b/core/racing/domain/entities/League.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { League } from './League'; describe('League', () => { diff --git a/core/racing/domain/entities/LeagueCreatedAt.test.ts b/core/racing/domain/entities/LeagueCreatedAt.test.ts index c11270446..1c15986f4 100644 --- a/core/racing/domain/entities/LeagueCreatedAt.test.ts +++ b/core/racing/domain/entities/LeagueCreatedAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LeagueCreatedAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LeagueCreatedAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LeagueDescription.test.ts b/core/racing/domain/entities/LeagueDescription.test.ts index ffabd6c9d..24d43e6da 100644 --- a/core/racing/domain/entities/LeagueDescription.test.ts +++ b/core/racing/domain/entities/LeagueDescription.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LeagueDescription'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LeagueDescription.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LeagueId.test.ts b/core/racing/domain/entities/LeagueId.test.ts index 6f231fade..073c2bf48 100644 --- a/core/racing/domain/entities/LeagueId.test.ts +++ b/core/racing/domain/entities/LeagueId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LeagueId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LeagueId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LeagueMembership.test.ts b/core/racing/domain/entities/LeagueMembership.test.ts index d8ac40ec0..7e7625501 100644 --- a/core/racing/domain/entities/LeagueMembership.test.ts +++ b/core/racing/domain/entities/LeagueMembership.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LeagueMembership } from './LeagueMembership'; describe('LeagueMembership', () => { diff --git a/core/racing/domain/entities/LeagueName.test.ts b/core/racing/domain/entities/LeagueName.test.ts index b452667be..c6688dc52 100644 --- a/core/racing/domain/entities/LeagueName.test.ts +++ b/core/racing/domain/entities/LeagueName.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LeagueName'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LeagueName.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LeagueOwnerId.test.ts b/core/racing/domain/entities/LeagueOwnerId.test.ts index 40411299d..0212565d3 100644 --- a/core/racing/domain/entities/LeagueOwnerId.test.ts +++ b/core/racing/domain/entities/LeagueOwnerId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LeagueOwnerId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LeagueOwnerId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LeagueScoringConfig.test.ts b/core/racing/domain/entities/LeagueScoringConfig.test.ts index eb29826f2..763534ca0 100644 --- a/core/racing/domain/entities/LeagueScoringConfig.test.ts +++ b/core/racing/domain/entities/LeagueScoringConfig.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect } from 'vitest'; -import { LeagueScoringConfig } from './LeagueScoringConfig'; +import { describe, expect, it } from 'vitest'; import type { ChampionshipConfig } from '../types/ChampionshipConfig'; import { PointsTable } from '../value-objects/PointsTable'; +import { LeagueScoringConfig } from './LeagueScoringConfig'; const mockPointsTable = new PointsTable({ 1: 25, 2: 18, 3: 15 }); diff --git a/core/racing/domain/entities/LeagueScoringConfigId.test.ts b/core/racing/domain/entities/LeagueScoringConfigId.test.ts index fdd54c3c0..eeb0d0919 100644 --- a/core/racing/domain/entities/LeagueScoringConfigId.test.ts +++ b/core/racing/domain/entities/LeagueScoringConfigId.test.ts @@ -1,5 +1,6 @@ -import { LeagueScoringConfigId } from './LeagueScoringConfigId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { LeagueScoringConfigId } from './LeagueScoringConfigId'; describe('LeagueScoringConfigId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/LeagueSocialLinks.test.ts b/core/racing/domain/entities/LeagueSocialLinks.test.ts index 8f7e0c64c..123eeb189 100644 --- a/core/racing/domain/entities/LeagueSocialLinks.test.ts +++ b/core/racing/domain/entities/LeagueSocialLinks.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LeagueSocialLinks'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LeagueSocialLinks.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LiveryTemplate.test.ts b/core/racing/domain/entities/LiveryTemplate.test.ts index 81db9519a..b60d3193e 100644 --- a/core/racing/domain/entities/LiveryTemplate.test.ts +++ b/core/racing/domain/entities/LiveryTemplate.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { LiveryTemplate } from './LiveryTemplate'; +import { describe, expect, it } from 'vitest'; import { LiveryDecal } from '../value-objects/LiveryDecal'; +import { LiveryTemplate } from './LiveryTemplate'; describe('LiveryTemplate', () => { const validProps = { diff --git a/core/racing/domain/entities/LiveryTemplateCreatedAt.test.ts b/core/racing/domain/entities/LiveryTemplateCreatedAt.test.ts index 436c3355a..9e65ccb01 100644 --- a/core/racing/domain/entities/LiveryTemplateCreatedAt.test.ts +++ b/core/racing/domain/entities/LiveryTemplateCreatedAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LiveryTemplateCreatedAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LiveryTemplateCreatedAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/LiveryTemplateUpdatedAt.test.ts b/core/racing/domain/entities/LiveryTemplateUpdatedAt.test.ts index 0116ef6d7..42bad22ba 100644 --- a/core/racing/domain/entities/LiveryTemplateUpdatedAt.test.ts +++ b/core/racing/domain/entities/LiveryTemplateUpdatedAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/LiveryTemplateUpdatedAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/LiveryTemplateUpdatedAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Manufacturer.test.ts b/core/racing/domain/entities/Manufacturer.test.ts index 054d6f22c..98844e288 100644 --- a/core/racing/domain/entities/Manufacturer.test.ts +++ b/core/racing/domain/entities/Manufacturer.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/Manufacturer'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/Manufacturer.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/MembershipRole.test.ts b/core/racing/domain/entities/MembershipRole.test.ts index efd1144b1..75739f300 100644 --- a/core/racing/domain/entities/MembershipRole.test.ts +++ b/core/racing/domain/entities/MembershipRole.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/MembershipRole'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/MembershipRole.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/MembershipStatus.test.ts b/core/racing/domain/entities/MembershipStatus.test.ts index 3ba4b8100..72693dc8c 100644 --- a/core/racing/domain/entities/MembershipStatus.test.ts +++ b/core/racing/domain/entities/MembershipStatus.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/MembershipStatus'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/MembershipStatus.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Penalty.test.ts b/core/racing/domain/entities/Penalty.test.ts index 1fb1dff45..3e9fd970f 100644 --- a/core/racing/domain/entities/Penalty.test.ts +++ b/core/racing/domain/entities/Penalty.test.ts @@ -1,5 +1,5 @@ +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { Penalty } from './Penalty'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; describe('Penalty', () => { describe('create', () => { diff --git a/core/racing/domain/entities/Protest.test.ts b/core/racing/domain/entities/Protest.test.ts index d37ebafe7..8661ad46f 100644 --- a/core/racing/domain/entities/Protest.test.ts +++ b/core/racing/domain/entities/Protest.test.ts @@ -1,5 +1,6 @@ +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { Protest } from './Protest'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; describe('Protest', () => { describe('create', () => { diff --git a/core/racing/domain/entities/ProtestDefense.test.ts b/core/racing/domain/entities/ProtestDefense.test.ts index 3beb9e7c4..27719752b 100644 --- a/core/racing/domain/entities/ProtestDefense.test.ts +++ b/core/racing/domain/entities/ProtestDefense.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/ProtestDefense'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/ProtestDefense.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/ProtestDefense.ts b/core/racing/domain/entities/ProtestDefense.ts index 59044550e..e0a2651d6 100644 --- a/core/racing/domain/entities/ProtestDefense.ts +++ b/core/racing/domain/entities/ProtestDefense.ts @@ -1,6 +1,6 @@ import { DefenseStatement } from './DefenseStatement'; -import { VideoUrl } from './VideoUrl'; import { SubmittedAt } from './SubmittedAt'; +import { VideoUrl } from './VideoUrl'; export class ProtestDefense { private constructor( diff --git a/core/racing/domain/entities/ProtestId.test.ts b/core/racing/domain/entities/ProtestId.test.ts index 52261f7bb..b293c418a 100644 --- a/core/racing/domain/entities/ProtestId.test.ts +++ b/core/racing/domain/entities/ProtestId.test.ts @@ -1,5 +1,5 @@ -import { ProtestId } from './ProtestId'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { ProtestId } from './ProtestId'; describe('ProtestId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/ProtestIncident.ts b/core/racing/domain/entities/ProtestIncident.ts index c56752f0f..f5ef25e26 100644 --- a/core/racing/domain/entities/ProtestIncident.ts +++ b/core/racing/domain/entities/ProtestIncident.ts @@ -1,6 +1,6 @@ +import { IncidentDescription } from './IncidentDescription'; import { LapNumber } from './LapNumber'; import { TimeInRace } from './TimeInRace'; -import { IncidentDescription } from './IncidentDescription'; export class ProtestIncident { private constructor( diff --git a/core/racing/domain/entities/ProtestStatus.test.ts b/core/racing/domain/entities/ProtestStatus.test.ts index d7de7a3a7..996cf63cb 100644 --- a/core/racing/domain/entities/ProtestStatus.test.ts +++ b/core/racing/domain/entities/ProtestStatus.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/ProtestStatus'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/ProtestStatus.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Race.test.ts b/core/racing/domain/entities/Race.test.ts index 4798819e5..b0774bebe 100644 --- a/core/racing/domain/entities/Race.test.ts +++ b/core/racing/domain/entities/Race.test.ts @@ -1,6 +1,7 @@ -import { Race } from './Race'; +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { SessionType } from '../value-objects/SessionType'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; +import { Race } from './Race'; describe('Race', () => { describe('create', () => { diff --git a/core/racing/domain/entities/RaceEvent.test.ts b/core/racing/domain/entities/RaceEvent.test.ts index 068203817..01b33b9a5 100644 --- a/core/racing/domain/entities/RaceEvent.test.ts +++ b/core/racing/domain/entities/RaceEvent.test.ts @@ -1,7 +1,8 @@ +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; +import { SessionType } from '../value-objects/SessionType'; import { RaceEvent } from './RaceEvent'; import { Session } from './Session'; -import { SessionType } from '../value-objects/SessionType'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; describe('RaceEvent', () => { const createMockSession = (overrides: Partial<{ diff --git a/core/racing/domain/entities/RaceId.test.ts b/core/racing/domain/entities/RaceId.test.ts index db69ac168..4970223b3 100644 --- a/core/racing/domain/entities/RaceId.test.ts +++ b/core/racing/domain/entities/RaceId.test.ts @@ -1,5 +1,6 @@ -import { RaceId } from './RaceId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { RaceId } from './RaceId'; describe('RaceId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/RaceRegistration.test.ts b/core/racing/domain/entities/RaceRegistration.test.ts index 0ef5554e9..2a1c3363a 100644 --- a/core/racing/domain/entities/RaceRegistration.test.ts +++ b/core/racing/domain/entities/RaceRegistration.test.ts @@ -1,7 +1,7 @@ -import { RaceRegistration } from './RaceRegistration'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; -import { RaceId } from './RaceId'; import { DriverId } from './DriverId'; +import { RaceId } from './RaceId'; +import { RaceRegistration } from './RaceRegistration'; import { RegisteredAt } from './RegisteredAt'; describe('RaceRegistration', () => { diff --git a/core/racing/domain/entities/RegisteredAt.test.ts b/core/racing/domain/entities/RegisteredAt.test.ts index b9ff72291..8e2ff354f 100644 --- a/core/racing/domain/entities/RegisteredAt.test.ts +++ b/core/racing/domain/entities/RegisteredAt.test.ts @@ -1,5 +1,6 @@ -import { RegisteredAt } from './RegisteredAt'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { RegisteredAt } from './RegisteredAt'; describe('RegisteredAt', () => { describe('create', () => { diff --git a/core/racing/domain/entities/ResultWithIncidents.test.ts b/core/racing/domain/entities/ResultWithIncidents.test.ts index d17c51d31..90f2afe17 100644 --- a/core/racing/domain/entities/ResultWithIncidents.test.ts +++ b/core/racing/domain/entities/ResultWithIncidents.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/ResultWithIncidents'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/ResultWithIncidents.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/ReviewedAt.test.ts b/core/racing/domain/entities/ReviewedAt.test.ts index 304a838a2..c831e3b2f 100644 --- a/core/racing/domain/entities/ReviewedAt.test.ts +++ b/core/racing/domain/entities/ReviewedAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/ReviewedAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/ReviewedAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/ScoringPresetId.test.ts b/core/racing/domain/entities/ScoringPresetId.test.ts index e35f48508..a5710bb56 100644 --- a/core/racing/domain/entities/ScoringPresetId.test.ts +++ b/core/racing/domain/entities/ScoringPresetId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/ScoringPresetId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/ScoringPresetId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Session.test.ts b/core/racing/domain/entities/Session.test.ts index ec7758534..7bd87e6ab 100644 --- a/core/racing/domain/entities/Session.test.ts +++ b/core/racing/domain/entities/Session.test.ts @@ -1,6 +1,6 @@ -import { Session } from './Session'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { SessionType } from '../value-objects/SessionType'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; +import { Session } from './Session'; describe('Session', () => { describe('create', () => { diff --git a/core/racing/domain/entities/SponsorshipRequest.test.ts b/core/racing/domain/entities/SponsorshipRequest.test.ts index f9f31e53d..59944a0f0 100644 --- a/core/racing/domain/entities/SponsorshipRequest.test.ts +++ b/core/racing/domain/entities/SponsorshipRequest.test.ts @@ -1,7 +1,7 @@ -import { SponsorshipRequest, SponsorableEntityType } from './SponsorshipRequest'; -import { SponsorshipTier } from './season/SeasonSponsorship'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { Money } from '../value-objects/Money'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; +import { SponsorableEntityType, SponsorshipRequest } from './SponsorshipRequest'; +import { SponsorshipTier } from './season/SeasonSponsorship'; describe('SponsorshipRequest', () => { const validMoney = Money.create(1000, 'USD'); diff --git a/core/racing/domain/entities/Standing.test.ts b/core/racing/domain/entities/Standing.test.ts index 679684f53..7601bdfd8 100644 --- a/core/racing/domain/entities/Standing.test.ts +++ b/core/racing/domain/entities/Standing.test.ts @@ -1,5 +1,6 @@ -import { Standing } from './Standing'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { Standing } from './Standing'; describe('Standing', () => { const validProps = { diff --git a/core/racing/domain/entities/StewardId.test.ts b/core/racing/domain/entities/StewardId.test.ts index d2283b6b2..3f83e02aa 100644 --- a/core/racing/domain/entities/StewardId.test.ts +++ b/core/racing/domain/entities/StewardId.test.ts @@ -1,5 +1,6 @@ -import { StewardId } from './StewardId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { StewardId } from './StewardId'; describe('StewardId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/SubmittedAt.test.ts b/core/racing/domain/entities/SubmittedAt.test.ts index 0dbe8a6cf..458a8b7d7 100644 --- a/core/racing/domain/entities/SubmittedAt.test.ts +++ b/core/racing/domain/entities/SubmittedAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/SubmittedAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/SubmittedAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Team.test.ts b/core/racing/domain/entities/Team.test.ts index 611a53d96..c23a0c1c8 100644 --- a/core/racing/domain/entities/Team.test.ts +++ b/core/racing/domain/entities/Team.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Team } from './Team'; describe('Team', () => { diff --git a/core/racing/domain/entities/TeamRatingEvent.test.ts b/core/racing/domain/entities/TeamRatingEvent.test.ts index c94849cfc..73e1fa7f3 100644 --- a/core/racing/domain/entities/TeamRatingEvent.test.ts +++ b/core/racing/domain/entities/TeamRatingEvent.test.ts @@ -1,9 +1,9 @@ -import { describe, it, expect } from 'vitest'; -import { TeamRatingEvent, type TeamRatingEventProps } from './TeamRatingEvent'; -import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../errors/RacingDomainError'; import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../errors/RacingDomainError'; +import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; +import { TeamRatingEvent, type TeamRatingEventProps } from './TeamRatingEvent'; describe('TeamRatingEvent', () => { const validProps: TeamRatingEventProps = { diff --git a/core/racing/domain/entities/TimeInRace.test.ts b/core/racing/domain/entities/TimeInRace.test.ts index 712fe3dbc..33b638778 100644 --- a/core/racing/domain/entities/TimeInRace.test.ts +++ b/core/racing/domain/entities/TimeInRace.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/TimeInRace'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/TimeInRace.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Track.test.ts b/core/racing/domain/entities/Track.test.ts index 9fdd0f7e8..601861d52 100644 --- a/core/racing/domain/entities/Track.test.ts +++ b/core/racing/domain/entities/Track.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Track } from './Track'; describe('Track', () => { diff --git a/core/racing/domain/entities/VideoUrl.test.ts b/core/racing/domain/entities/VideoUrl.test.ts index e3fae4e66..a1f71d00e 100644 --- a/core/racing/domain/entities/VideoUrl.test.ts +++ b/core/racing/domain/entities/VideoUrl.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/VideoUrl'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/VideoUrl.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Weight.test.ts b/core/racing/domain/entities/Weight.test.ts index 12bd5053e..3ec4ac1c1 100644 --- a/core/racing/domain/entities/Weight.test.ts +++ b/core/racing/domain/entities/Weight.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/Weight'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/Weight.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/Year.test.ts b/core/racing/domain/entities/Year.test.ts index 57264f1ce..c6ad85f1f 100644 --- a/core/racing/domain/entities/Year.test.ts +++ b/core/racing/domain/entities/Year.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/Year'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/Year.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/championship/ChampionshipStanding.test.ts b/core/racing/domain/entities/championship/ChampionshipStanding.test.ts index 1e382dbde..39f0bc2ec 100644 --- a/core/racing/domain/entities/championship/ChampionshipStanding.test.ts +++ b/core/racing/domain/entities/championship/ChampionshipStanding.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { ChampionshipStanding } from './ChampionshipStanding'; +import { describe, expect, it } from 'vitest'; import type { ParticipantRef } from '../../types/ParticipantRef'; +import { ChampionshipStanding } from './ChampionshipStanding'; describe('ChampionshipStanding', () => { const participant: ParticipantRef = { type: 'driver', id: 'driver1' }; diff --git a/core/racing/domain/entities/championship/Position.test.ts b/core/racing/domain/entities/championship/Position.test.ts index 431b2fabf..1b930fa8b 100644 --- a/core/racing/domain/entities/championship/Position.test.ts +++ b/core/racing/domain/entities/championship/Position.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Position } from './Position'; describe('Position', () => { diff --git a/core/racing/domain/entities/championship/ResultsCount.test.ts b/core/racing/domain/entities/championship/ResultsCount.test.ts index ea2d5285f..90dbbbdac 100644 --- a/core/racing/domain/entities/championship/ResultsCount.test.ts +++ b/core/racing/domain/entities/championship/ResultsCount.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { ResultsCount } from './ResultsCount'; describe('ResultsCount', () => { diff --git a/core/racing/domain/entities/league-wallet/LeagueWallet.test.ts b/core/racing/domain/entities/league-wallet/LeagueWallet.test.ts index a3d9fac78..4062acae0 100644 --- a/core/racing/domain/entities/league-wallet/LeagueWallet.test.ts +++ b/core/racing/domain/entities/league-wallet/LeagueWallet.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { LeagueWallet } from './LeagueWallet'; +import { describe, expect, it } from 'vitest'; import { Money } from '../../value-objects/Money'; +import { LeagueWallet } from './LeagueWallet'; describe('LeagueWallet', () => { it('should create a league wallet', () => { diff --git a/core/racing/domain/entities/league-wallet/LeagueWalletId.test.ts b/core/racing/domain/entities/league-wallet/LeagueWalletId.test.ts index 202e7f975..83ffbb080 100644 --- a/core/racing/domain/entities/league-wallet/LeagueWalletId.test.ts +++ b/core/racing/domain/entities/league-wallet/LeagueWalletId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LeagueWalletId } from './LeagueWalletId'; describe('LeagueWalletId', () => { diff --git a/core/racing/domain/entities/league-wallet/Transaction.test.ts b/core/racing/domain/entities/league-wallet/Transaction.test.ts index 37aa26026..530a482da 100644 --- a/core/racing/domain/entities/league-wallet/Transaction.test.ts +++ b/core/racing/domain/entities/league-wallet/Transaction.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; +import { Money } from '../../value-objects/Money'; +import { LeagueWalletId } from './LeagueWalletId'; import { Transaction } from './Transaction'; import { TransactionId } from './TransactionId'; -import { LeagueWalletId } from './LeagueWalletId'; -import { Money } from '../../value-objects/Money'; describe('Transaction', () => { const validId = TransactionId.create('tx1'); diff --git a/core/racing/domain/entities/league-wallet/TransactionId.test.ts b/core/racing/domain/entities/league-wallet/TransactionId.test.ts index 66ceeae30..82ef18742 100644 --- a/core/racing/domain/entities/league-wallet/TransactionId.test.ts +++ b/core/racing/domain/entities/league-wallet/TransactionId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TransactionId } from './TransactionId'; describe('TransactionId', () => { diff --git a/core/racing/domain/entities/penalty/Penalty.test.ts b/core/racing/domain/entities/penalty/Penalty.test.ts index 436ac5651..437f3e410 100644 --- a/core/racing/domain/entities/penalty/Penalty.test.ts +++ b/core/racing/domain/entities/penalty/Penalty.test.ts @@ -1,5 +1,6 @@ +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../../errors/RacingDomainError'; import { Penalty } from './Penalty'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../../errors/RacingDomainError'; describe('Penalty', () => { describe('create', () => { diff --git a/core/racing/domain/entities/penalty/PenaltyId.test.ts b/core/racing/domain/entities/penalty/PenaltyId.test.ts index 83c96607f..2c34ed0ed 100644 --- a/core/racing/domain/entities/penalty/PenaltyId.test.ts +++ b/core/racing/domain/entities/penalty/PenaltyId.test.ts @@ -1,5 +1,6 @@ -import { PenaltyId } from './PenaltyId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PenaltyId } from './PenaltyId'; describe('PenaltyId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/penalty/PenaltyNotes.test.ts b/core/racing/domain/entities/penalty/PenaltyNotes.test.ts index 5e570c398..99b1f50ec 100644 --- a/core/racing/domain/entities/penalty/PenaltyNotes.test.ts +++ b/core/racing/domain/entities/penalty/PenaltyNotes.test.ts @@ -1,5 +1,6 @@ -import { PenaltyNotes } from './PenaltyNotes'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PenaltyNotes } from './PenaltyNotes'; describe('PenaltyNotes', () => { describe('create', () => { diff --git a/core/racing/domain/entities/penalty/PenaltyReason.test.ts b/core/racing/domain/entities/penalty/PenaltyReason.test.ts index fee2681b8..c00e5fc4b 100644 --- a/core/racing/domain/entities/penalty/PenaltyReason.test.ts +++ b/core/racing/domain/entities/penalty/PenaltyReason.test.ts @@ -1,5 +1,6 @@ -import { PenaltyReason } from './PenaltyReason'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PenaltyReason } from './PenaltyReason'; describe('PenaltyReason', () => { describe('create', () => { diff --git a/core/racing/domain/entities/penalty/PenaltyStatus.test.ts b/core/racing/domain/entities/penalty/PenaltyStatus.test.ts index b4a0b124c..3bbef607f 100644 --- a/core/racing/domain/entities/penalty/PenaltyStatus.test.ts +++ b/core/racing/domain/entities/penalty/PenaltyStatus.test.ts @@ -1,5 +1,6 @@ -import { PenaltyStatus } from './PenaltyStatus'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PenaltyStatus } from './PenaltyStatus'; describe('PenaltyStatus', () => { describe('create', () => { diff --git a/core/racing/domain/entities/penalty/PenaltyType.test.ts b/core/racing/domain/entities/penalty/PenaltyType.test.ts index e1a885246..068be82e1 100644 --- a/core/racing/domain/entities/penalty/PenaltyType.test.ts +++ b/core/racing/domain/entities/penalty/PenaltyType.test.ts @@ -1,5 +1,6 @@ -import { PenaltyType } from './PenaltyType'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PenaltyType } from './PenaltyType'; describe('PenaltyType', () => { describe('create', () => { diff --git a/core/racing/domain/entities/penalty/PenaltyValue.test.ts b/core/racing/domain/entities/penalty/PenaltyValue.test.ts index 90c11613f..ff5aac065 100644 --- a/core/racing/domain/entities/penalty/PenaltyValue.test.ts +++ b/core/racing/domain/entities/penalty/PenaltyValue.test.ts @@ -1,5 +1,6 @@ -import { PenaltyValue } from './PenaltyValue'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PenaltyValue } from './PenaltyValue'; describe('PenaltyValue', () => { describe('create', () => { diff --git a/core/racing/domain/entities/prize/Prize.test.ts b/core/racing/domain/entities/prize/Prize.test.ts index 73797c36a..77ca6fb41 100644 --- a/core/racing/domain/entities/prize/Prize.test.ts +++ b/core/racing/domain/entities/prize/Prize.test.ts @@ -1,6 +1,7 @@ -import { Prize } from './Prize'; +import { describe, expect, it } from 'vitest'; +import { RacingDomainInvariantError, RacingDomainValidationError } from '../../errors/RacingDomainError'; import { Money } from '../../value-objects/Money'; -import { RacingDomainValidationError, RacingDomainInvariantError } from '../../errors/RacingDomainError'; +import { Prize } from './Prize'; describe('Prize', () => { describe('create', () => { diff --git a/core/racing/domain/entities/prize/PrizeId.test.ts b/core/racing/domain/entities/prize/PrizeId.test.ts index cb1b2f5dc..4b1e2f350 100644 --- a/core/racing/domain/entities/prize/PrizeId.test.ts +++ b/core/racing/domain/entities/prize/PrizeId.test.ts @@ -1,5 +1,6 @@ -import { PrizeId } from './PrizeId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PrizeId } from './PrizeId'; describe('PrizeId', () => { describe('create', () => { diff --git a/core/racing/domain/entities/prize/PrizeStatus.test.ts b/core/racing/domain/entities/prize/PrizeStatus.test.ts index 570bc5ed2..4685045de 100644 --- a/core/racing/domain/entities/prize/PrizeStatus.test.ts +++ b/core/racing/domain/entities/prize/PrizeStatus.test.ts @@ -1,5 +1,6 @@ -import { PrizeStatus } from './PrizeStatus'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { PrizeStatus } from './PrizeStatus'; describe('PrizeStatus', () => { describe('create', () => { diff --git a/core/racing/domain/entities/result/IncidentCount.test.ts b/core/racing/domain/entities/result/IncidentCount.test.ts index 2c5d8d22e..fd58ebc6c 100644 --- a/core/racing/domain/entities/result/IncidentCount.test.ts +++ b/core/racing/domain/entities/result/IncidentCount.test.ts @@ -1,5 +1,6 @@ -import { IncidentCount } from './IncidentCount'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { IncidentCount } from './IncidentCount'; describe('IncidentCount', () => { describe('create', () => { diff --git a/core/racing/domain/entities/result/LapTime.test.ts b/core/racing/domain/entities/result/LapTime.test.ts index deeb7833b..73f730c33 100644 --- a/core/racing/domain/entities/result/LapTime.test.ts +++ b/core/racing/domain/entities/result/LapTime.test.ts @@ -1,5 +1,6 @@ -import { LapTime } from './LapTime'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { LapTime } from './LapTime'; describe('LapTime', () => { describe('create', () => { diff --git a/core/racing/domain/entities/result/Position.test.ts b/core/racing/domain/entities/result/Position.test.ts index a614bb19d..6714a334e 100644 --- a/core/racing/domain/entities/result/Position.test.ts +++ b/core/racing/domain/entities/result/Position.test.ts @@ -1,5 +1,6 @@ -import { Position } from './Position'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; +import { Position } from './Position'; describe('Position', () => { describe('create', () => { diff --git a/core/racing/domain/entities/result/Result.test.ts b/core/racing/domain/entities/result/Result.test.ts index 3182c2b74..d2ad88f0f 100644 --- a/core/racing/domain/entities/result/Result.test.ts +++ b/core/racing/domain/entities/result/Result.test.ts @@ -1,10 +1,11 @@ -import { Result } from './Result'; +import { beforeEach, describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../../errors/RacingDomainError'; -import { RaceId } from '../RaceId'; import { DriverId } from '../DriverId'; -import { Position } from './Position'; -import { LapTime } from './LapTime'; +import { RaceId } from '../RaceId'; import { IncidentCount } from './IncidentCount'; +import { LapTime } from './LapTime'; +import { Position } from './Position'; +import { Result } from './Result'; describe('Result', () => { const validId = 'result-123'; diff --git a/core/racing/domain/entities/season/Season.test.ts b/core/racing/domain/entities/season/Season.test.ts index c40fe019c..56d8d1e8f 100644 --- a/core/racing/domain/entities/season/Season.test.ts +++ b/core/racing/domain/entities/season/Season.test.ts @@ -1,14 +1,14 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - RacingDomainInvariantError, - RacingDomainValidationError, + RacingDomainInvariantError, + RacingDomainValidationError, } from '@core/racing/domain/errors/RacingDomainError'; -import { SeasonScoringConfig } from '@core/racing/domain/value-objects/SeasonScoringConfig'; -import { SeasonDropPolicy } from '@core/racing/domain/value-objects/SeasonDropPolicy'; -import { SeasonStewardingConfig } from '@core/racing/domain/value-objects/SeasonStewardingConfig'; import { Season, SeasonStatus } from '@core/racing/domain/entities/season/Season'; +import { SeasonDropPolicy } from '@core/racing/domain/value-objects/SeasonDropPolicy'; +import { SeasonScoringConfig } from '@core/racing/domain/value-objects/SeasonScoringConfig'; +import { SeasonStewardingConfig } from '@core/racing/domain/value-objects/SeasonStewardingConfig'; const createMinimalSeason = (overrides?: { status?: SeasonStatus }) => Season.create({ diff --git a/core/racing/domain/entities/season/SeasonId.test.ts b/core/racing/domain/entities/season/SeasonId.test.ts index 44d42cbcc..e10c6687e 100644 --- a/core/racing/domain/entities/season/SeasonId.test.ts +++ b/core/racing/domain/entities/season/SeasonId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/season/SeasonId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/season/SeasonId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/season/SeasonSponsorship.test.ts b/core/racing/domain/entities/season/SeasonSponsorship.test.ts index ff85d11ec..3657d460c 100644 --- a/core/racing/domain/entities/season/SeasonSponsorship.test.ts +++ b/core/racing/domain/entities/season/SeasonSponsorship.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - RacingDomainInvariantError, - RacingDomainValidationError, + RacingDomainInvariantError, + RacingDomainValidationError, } from '../../errors/RacingDomainError'; -import { SeasonSponsorship } from './SeasonSponsorship'; import { Money } from '../../value-objects/Money'; +import { SeasonSponsorship } from './SeasonSponsorship'; describe('SeasonSponsorship', () => { const validProps = { diff --git a/core/racing/domain/entities/sponsor/Sponsor.test.ts b/core/racing/domain/entities/sponsor/Sponsor.test.ts index f88339625..fc2610ce6 100644 --- a/core/racing/domain/entities/sponsor/Sponsor.test.ts +++ b/core/racing/domain/entities/sponsor/Sponsor.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/sponsor/Sponsor'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/sponsor/Sponsor.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/sponsor/SponsorCreatedAt.test.ts b/core/racing/domain/entities/sponsor/SponsorCreatedAt.test.ts index 549750ebf..e9c58b4f3 100644 --- a/core/racing/domain/entities/sponsor/SponsorCreatedAt.test.ts +++ b/core/racing/domain/entities/sponsor/SponsorCreatedAt.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/sponsor/SponsorCreatedAt'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/sponsor/SponsorCreatedAt.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/sponsor/SponsorEmail.test.ts b/core/racing/domain/entities/sponsor/SponsorEmail.test.ts index cdf5cbf6c..ced9dcee6 100644 --- a/core/racing/domain/entities/sponsor/SponsorEmail.test.ts +++ b/core/racing/domain/entities/sponsor/SponsorEmail.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/sponsor/SponsorEmail'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/sponsor/SponsorEmail.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/sponsor/SponsorId.test.ts b/core/racing/domain/entities/sponsor/SponsorId.test.ts index 6dd1df8b2..02f9c0307 100644 --- a/core/racing/domain/entities/sponsor/SponsorId.test.ts +++ b/core/racing/domain/entities/sponsor/SponsorId.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/sponsor/SponsorId'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/sponsor/SponsorId.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/sponsor/SponsorName.test.ts b/core/racing/domain/entities/sponsor/SponsorName.test.ts index 65401abe1..4d06de835 100644 --- a/core/racing/domain/entities/sponsor/SponsorName.test.ts +++ b/core/racing/domain/entities/sponsor/SponsorName.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/sponsor/SponsorName'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/sponsor/SponsorName.ts', () => { it('imports', () => { diff --git a/core/racing/domain/entities/sponsor/Url.test.ts b/core/racing/domain/entities/sponsor/Url.test.ts index 0b668ad2e..3466fdf70 100644 --- a/core/racing/domain/entities/sponsor/Url.test.ts +++ b/core/racing/domain/entities/sponsor/Url.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/entities/sponsor/Url'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/entities/sponsor/Url.ts', () => { it('imports', () => { diff --git a/core/racing/domain/errors/RacingDomainError.ts b/core/racing/domain/errors/RacingDomainError.ts index 9706b102a..8eb8378c2 100644 --- a/core/racing/domain/errors/RacingDomainError.ts +++ b/core/racing/domain/errors/RacingDomainError.ts @@ -1,4 +1,4 @@ -import type { DomainError, CommonDomainErrorKind } from '@core/shared/errors/DomainError'; +import type { CommonDomainErrorKind, DomainError } from '@core/shared/errors/DomainError'; export abstract class RacingDomainError extends Error implements DomainError { readonly type = 'domain' as const; diff --git a/core/racing/domain/repositories/LeagueMembershipRepository.ts b/core/racing/domain/repositories/LeagueMembershipRepository.ts index 5d27ac994..bb3e069c9 100644 --- a/core/racing/domain/repositories/LeagueMembershipRepository.ts +++ b/core/racing/domain/repositories/LeagueMembershipRepository.ts @@ -6,8 +6,8 @@ */ import type { - LeagueMembership, - JoinRequest, + JoinRequest, + LeagueMembership, } from '../entities/LeagueMembership'; export interface LeagueMembershipRepository { diff --git a/core/racing/domain/repositories/SponsorshipPricingRepository.ts b/core/racing/domain/repositories/SponsorshipPricingRepository.ts index 86b6bca4a..478a307c6 100644 --- a/core/racing/domain/repositories/SponsorshipPricingRepository.ts +++ b/core/racing/domain/repositories/SponsorshipPricingRepository.ts @@ -5,8 +5,8 @@ * This allows drivers, teams, races, and leagues to define their sponsorship slots. */ -import type { SponsorshipPricing } from '../value-objects/SponsorshipPricing'; import type { SponsorableEntityType } from '../entities/SponsorshipRequest'; +import type { SponsorshipPricing } from '../value-objects/SponsorshipPricing'; export interface SponsorshipPricingRepository { /** diff --git a/core/racing/domain/repositories/SponsorshipRequestRepository.ts b/core/racing/domain/repositories/SponsorshipRequestRepository.ts index e363213ea..aaf4f0b7c 100644 --- a/core/racing/domain/repositories/SponsorshipRequestRepository.ts +++ b/core/racing/domain/repositories/SponsorshipRequestRepository.ts @@ -4,7 +4,7 @@ * Defines operations for SponsorshipRequest aggregate persistence */ -import type { SponsorshipRequest, SponsorableEntityType, SponsorshipRequestStatus } from '../entities/SponsorshipRequest'; +import type { SponsorableEntityType, SponsorshipRequest, SponsorshipRequestStatus } from '../entities/SponsorshipRequest'; export interface SponsorshipRequestRepository { findById(id: string): Promise; diff --git a/core/racing/domain/repositories/TeamMembershipRepository.ts b/core/racing/domain/repositories/TeamMembershipRepository.ts index e508a99d9..f196d8978 100644 --- a/core/racing/domain/repositories/TeamMembershipRepository.ts +++ b/core/racing/domain/repositories/TeamMembershipRepository.ts @@ -6,8 +6,8 @@ */ import type { - TeamMembership, - TeamJoinRequest, + TeamJoinRequest, + TeamMembership, } from '../types/TeamMembership'; export interface TeamMembershipRepository { diff --git a/core/racing/domain/services/ChampionshipAggregator.ts b/core/racing/domain/services/ChampionshipAggregator.ts index 0238d4cda..32d8df888 100644 --- a/core/racing/domain/services/ChampionshipAggregator.ts +++ b/core/racing/domain/services/ChampionshipAggregator.ts @@ -1,8 +1,8 @@ +import { ChampionshipStanding } from '../entities/championship/ChampionshipStanding'; import type { ChampionshipConfig } from '../types/ChampionshipConfig'; import type { ParticipantRef } from '../types/ParticipantRef'; -import { ChampionshipStanding } from '../entities/championship/ChampionshipStanding'; -import type { ParticipantEventPoints } from './EventScoringService'; import { DropScoreApplier, type EventPointsEntry } from './DropScoreApplier'; +import type { ParticipantEventPoints } from './EventScoringService'; export class ChampionshipAggregator { constructor(private readonly dropScoreApplier: DropScoreApplier) {} diff --git a/core/racing/domain/services/DropScoreApplier.test.ts b/core/racing/domain/services/DropScoreApplier.test.ts index e7f5ee20f..0ff6d996a 100644 --- a/core/racing/domain/services/DropScoreApplier.test.ts +++ b/core/racing/domain/services/DropScoreApplier.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; -import { DropScoreApplier } from '@core/racing/domain/services/DropScoreApplier'; import type { EventPointsEntry } from '@core/racing/domain/services/DropScoreApplier'; +import { DropScoreApplier } from '@core/racing/domain/services/DropScoreApplier'; import type { DropScorePolicy } from '@core/racing/domain/types/DropScorePolicy'; describe('DropScoreApplier', () => { diff --git a/core/racing/domain/services/DropScoreApplier.ts b/core/racing/domain/services/DropScoreApplier.ts index 5d432c498..768bb314d 100644 --- a/core/racing/domain/services/DropScoreApplier.ts +++ b/core/racing/domain/services/DropScoreApplier.ts @@ -1,5 +1,5 @@ -import type { DropScorePolicy } from '../types/DropScorePolicy'; import type { DomainCalculationService } from '@core/shared/domain/Service'; +import type { DropScorePolicy } from '../types/DropScorePolicy'; export interface EventPointsEntry { eventId: string; diff --git a/core/racing/domain/services/EventScoringService.test.ts b/core/racing/domain/services/EventScoringService.test.ts index cb19d8de7..9a4f55aa4 100644 --- a/core/racing/domain/services/EventScoringService.test.ts +++ b/core/racing/domain/services/EventScoringService.test.ts @@ -1,9 +1,9 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; +import type { Penalty } from '@core/racing/domain/entities/Penalty'; +import { Result } from '@core/racing/domain/entities/result/Result'; import { EventScoringService } from '@core/racing/domain/services/EventScoringService'; import type { BonusRule } from '@core/racing/domain/types/BonusRule'; -import { Result } from '@core/racing/domain/entities/result/Result'; -import type { Penalty } from '@core/racing/domain/entities/Penalty'; import type { ChampionshipConfig } from '@core/racing/domain/types/ChampionshipConfig'; import type { SessionType } from '@core/racing/domain/types/SessionType'; import { PointsTable } from '@core/racing/domain/value-objects/PointsTable'; diff --git a/core/racing/domain/services/EventScoringService.ts b/core/racing/domain/services/EventScoringService.ts index 9aec2622d..c4e1ee487 100644 --- a/core/racing/domain/services/EventScoringService.ts +++ b/core/racing/domain/services/EventScoringService.ts @@ -1,13 +1,13 @@ -import type { ChampionshipConfig } from '../types/ChampionshipConfig'; -import type { SessionType } from '../types/SessionType'; -import type { ParticipantRef } from '../types/ParticipantRef'; -import type { Result } from '../entities/result/Result'; import type { Penalty } from '../entities/Penalty'; +import type { Result } from '../entities/result/Result'; import type { BonusRule } from '../types/BonusRule'; +import type { ChampionshipConfig } from '../types/ChampionshipConfig'; import type { ChampionshipType } from '../types/ChampionshipType'; +import type { ParticipantRef } from '../types/ParticipantRef'; +import type { SessionType } from '../types/SessionType'; -import type { PointsTable } from '../value-objects/PointsTable'; import type { DomainCalculationService } from '@core/shared/domain/Service'; +import type { PointsTable } from '../value-objects/PointsTable'; export interface ParticipantEventPoints { participant: ParticipantRef; diff --git a/core/racing/domain/services/ScheduleCalculator.test.ts b/core/racing/domain/services/ScheduleCalculator.test.ts index c41a68a5a..4b94bacdd 100644 --- a/core/racing/domain/services/ScheduleCalculator.test.ts +++ b/core/racing/domain/services/ScheduleCalculator.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; import { calculateRaceDates, getNextWeekday, type ScheduleConfig } from '@core/racing/domain/services/ScheduleCalculator'; import type { Weekday } from '@core/racing/domain/types/Weekday'; +import { describe, expect, it } from 'vitest'; describe('ScheduleCalculator', () => { describe('calculateRaceDates', () => { diff --git a/core/racing/domain/services/ScoringPresetTimingService.test.ts b/core/racing/domain/services/ScoringPresetTimingService.test.ts index cae844a0c..105b36eab 100644 --- a/core/racing/domain/services/ScoringPresetTimingService.test.ts +++ b/core/racing/domain/services/ScoringPresetTimingService.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - applyScoringPresetToTimings, - type ScoringPresetTimings, + applyScoringPresetToTimings, + type ScoringPresetTimings, } from '@core/racing/domain/services/ScoringPresetTimingService'; describe('ScoringPresetTimingService', () => { diff --git a/core/racing/domain/services/SeasonScheduleGenerator.ts b/core/racing/domain/services/SeasonScheduleGenerator.ts index 8e55464a2..ef1d6c455 100644 --- a/core/racing/domain/services/SeasonScheduleGenerator.ts +++ b/core/racing/domain/services/SeasonScheduleGenerator.ts @@ -1,12 +1,12 @@ -import { SeasonSchedule } from '../value-objects/SeasonSchedule'; -import { ScheduledRaceSlot } from '../value-objects/ScheduledRaceSlot'; import type { RecurrenceStrategy } from '../value-objects/RecurrenceStrategy'; +import { ScheduledRaceSlot } from '../value-objects/ScheduledRaceSlot'; +import { SeasonSchedule } from '../value-objects/SeasonSchedule'; -import { RaceTimeOfDay } from '../value-objects/RaceTimeOfDay'; -import type { Weekday } from '../types/Weekday'; -import { weekdayToIndex } from '../types/Weekday'; import type { DomainCalculationService } from '@core/shared/domain/Service'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import type { Weekday } from '../types/Weekday'; +import { weekdayToIndex } from '../types/Weekday'; +import { RaceTimeOfDay } from '../value-objects/RaceTimeOfDay'; function cloneDate(date: Date): Date { return new Date(date.getTime()); diff --git a/core/racing/domain/services/TeamDrivingRatingCalculator.test.ts b/core/racing/domain/services/TeamDrivingRatingCalculator.test.ts index 1c7bb1566..bce12f8f9 100644 --- a/core/racing/domain/services/TeamDrivingRatingCalculator.test.ts +++ b/core/racing/domain/services/TeamDrivingRatingCalculator.test.ts @@ -1,4 +1,4 @@ -import { TeamDrivingRatingCalculator, TeamDrivingRaceResult, TeamDrivingQualifyingResult, TeamDrivingOvertakeStats } from './TeamDrivingRatingCalculator'; +import { TeamDrivingOvertakeStats, TeamDrivingQualifyingResult, TeamDrivingRaceResult, TeamDrivingRatingCalculator } from './TeamDrivingRatingCalculator'; describe('TeamDrivingRatingCalculator', () => { describe('calculateFromRaceFinish', () => { diff --git a/core/racing/domain/services/TeamDrivingRatingCalculator.ts b/core/racing/domain/services/TeamDrivingRatingCalculator.ts index ace2505d7..cfe79ab1e 100644 --- a/core/racing/domain/services/TeamDrivingRatingCalculator.ts +++ b/core/racing/domain/services/TeamDrivingRatingCalculator.ts @@ -1,8 +1,8 @@ import { TeamRatingEvent } from '../entities/TeamRatingEvent'; -import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; -import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; import { TeamDrivingReasonCode } from '../value-objects/TeamDrivingReasonCode'; +import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; export interface TeamDrivingRaceResult { teamId: string; diff --git a/core/racing/domain/services/TeamDrivingRatingEventFactory.test.ts b/core/racing/domain/services/TeamDrivingRatingEventFactory.test.ts index 76d8b041f..38169cd82 100644 --- a/core/racing/domain/services/TeamDrivingRatingEventFactory.test.ts +++ b/core/racing/domain/services/TeamDrivingRatingEventFactory.test.ts @@ -1,4 +1,4 @@ -import { TeamDrivingRatingEventFactory, TeamDrivingRaceFactsDto, TeamDrivingQualifyingFactsDto, TeamDrivingOvertakeFactsDto } from './TeamDrivingRatingEventFactory'; +import { TeamDrivingOvertakeFactsDto, TeamDrivingQualifyingFactsDto, TeamDrivingRaceFactsDto, TeamDrivingRatingEventFactory } from './TeamDrivingRatingEventFactory'; describe('TeamDrivingRatingEventFactory', () => { describe('createFromRaceFinish', () => { diff --git a/core/racing/domain/services/TeamDrivingRatingEventFactory.ts b/core/racing/domain/services/TeamDrivingRatingEventFactory.ts index 7488d4c3b..b0ac3708a 100644 --- a/core/racing/domain/services/TeamDrivingRatingEventFactory.ts +++ b/core/racing/domain/services/TeamDrivingRatingEventFactory.ts @@ -1,9 +1,9 @@ import { TeamRatingEvent } from '../entities/TeamRatingEvent'; -import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; -import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; import { TeamDrivingReasonCode } from '../value-objects/TeamDrivingReasonCode'; -import { TeamDrivingRatingCalculator, TeamDrivingRaceResult, TeamDrivingQualifyingResult, TeamDrivingOvertakeStats } from './TeamDrivingRatingCalculator'; +import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; +import { TeamDrivingOvertakeStats, TeamDrivingQualifyingResult, TeamDrivingRaceResult, TeamDrivingRatingCalculator } from './TeamDrivingRatingCalculator'; export interface TeamDrivingRaceFactsDto { raceId: string; diff --git a/core/racing/domain/services/TeamRatingEventFactory.test.ts b/core/racing/domain/services/TeamRatingEventFactory.test.ts index 7ee34d7fa..a041a9eac 100644 --- a/core/racing/domain/services/TeamRatingEventFactory.test.ts +++ b/core/racing/domain/services/TeamRatingEventFactory.test.ts @@ -1,4 +1,4 @@ -import { TeamRatingEventFactory, TeamRaceFactsDto } from './TeamRatingEventFactory'; +import { TeamRaceFactsDto, TeamRatingEventFactory } from './TeamRatingEventFactory'; describe('TeamRatingEventFactory', () => { describe('createFromRaceFinish', () => { diff --git a/core/racing/domain/services/TeamRatingEventFactory.ts b/core/racing/domain/services/TeamRatingEventFactory.ts index 2a1734b4b..698d4621a 100644 --- a/core/racing/domain/services/TeamRatingEventFactory.ts +++ b/core/racing/domain/services/TeamRatingEventFactory.ts @@ -1,7 +1,7 @@ import { TeamRatingEvent } from '../entities/TeamRatingEvent'; -import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; export interface TeamRaceFactsDto { raceId: string; diff --git a/core/racing/domain/services/TeamRatingSnapshotCalculator.test.ts b/core/racing/domain/services/TeamRatingSnapshotCalculator.test.ts index f5aecb2aa..ed609ceb7 100644 --- a/core/racing/domain/services/TeamRatingSnapshotCalculator.test.ts +++ b/core/racing/domain/services/TeamRatingSnapshotCalculator.test.ts @@ -1,9 +1,9 @@ -import { TeamRatingSnapshotCalculator } from './TeamRatingSnapshotCalculator'; import { TeamRatingEvent } from '../entities/TeamRatingEvent'; -import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; -import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; import { TeamRatingDelta } from '../value-objects/TeamRatingDelta'; +import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { TeamRatingEventId } from '../value-objects/TeamRatingEventId'; import { TeamRatingValue } from '../value-objects/TeamRatingValue'; +import { TeamRatingSnapshotCalculator } from './TeamRatingSnapshotCalculator'; describe('TeamRatingSnapshotCalculator', () => { describe('calculate', () => { diff --git a/core/racing/domain/services/TeamRatingSnapshotCalculator.ts b/core/racing/domain/services/TeamRatingSnapshotCalculator.ts index fe23d97b9..aa2207dda 100644 --- a/core/racing/domain/services/TeamRatingSnapshotCalculator.ts +++ b/core/racing/domain/services/TeamRatingSnapshotCalculator.ts @@ -1,6 +1,6 @@ import { TeamRatingEvent } from '../entities/TeamRatingEvent'; -import { TeamRatingValue } from '../value-objects/TeamRatingValue'; import { TeamRatingDimensionKey } from '../value-objects/TeamRatingDimensionKey'; +import { TeamRatingValue } from '../value-objects/TeamRatingValue'; export interface TeamRatingSnapshot { teamId: string; diff --git a/core/racing/domain/types/ChampionshipConfig.ts b/core/racing/domain/types/ChampionshipConfig.ts index da142dc99..19601b789 100644 --- a/core/racing/domain/types/ChampionshipConfig.ts +++ b/core/racing/domain/types/ChampionshipConfig.ts @@ -1,8 +1,8 @@ -import type { ChampionshipType } from "./ChampionshipType"; -import type { SessionType } from "./SessionType"; import type { PointsTable } from '../value-objects/PointsTable'; import type { BonusRule } from "./BonusRule"; +import type { ChampionshipType } from "./ChampionshipType"; import type { DropScorePolicy } from "./DropScorePolicy"; +import type { SessionType } from "./SessionType"; /** * Domain Type: ChampionshipConfig diff --git a/core/racing/domain/value-objects/CarId.test.ts b/core/racing/domain/value-objects/CarId.test.ts index ea1936145..6c62ab421 100644 --- a/core/racing/domain/value-objects/CarId.test.ts +++ b/core/racing/domain/value-objects/CarId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { CarId } from './CarId'; describe('CarId', () => { diff --git a/core/racing/domain/value-objects/CarId.ts b/core/racing/domain/value-objects/CarId.ts index 47cd880b7..55ca8cd81 100644 --- a/core/racing/domain/value-objects/CarId.ts +++ b/core/racing/domain/value-objects/CarId.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class CarId implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/CountryCode.test.ts b/core/racing/domain/value-objects/CountryCode.test.ts index 05bfaf019..27a80ed68 100644 --- a/core/racing/domain/value-objects/CountryCode.test.ts +++ b/core/racing/domain/value-objects/CountryCode.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { CountryCode } from './CountryCode'; describe('CountryCode', () => { diff --git a/core/racing/domain/value-objects/CountryCode.ts b/core/racing/domain/value-objects/CountryCode.ts index 25aa59d75..d25323d09 100644 --- a/core/racing/domain/value-objects/CountryCode.ts +++ b/core/racing/domain/value-objects/CountryCode.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class CountryCode implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/DecalOverride.test.ts b/core/racing/domain/value-objects/DecalOverride.test.ts index 888fe121d..625e232d4 100644 --- a/core/racing/domain/value-objects/DecalOverride.test.ts +++ b/core/racing/domain/value-objects/DecalOverride.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { DecalOverride } from './DecalOverride'; describe('DecalOverride', () => { diff --git a/core/racing/domain/value-objects/DecalOverride.ts b/core/racing/domain/value-objects/DecalOverride.ts index 9c2ccc593..b24919472 100644 --- a/core/racing/domain/value-objects/DecalOverride.ts +++ b/core/racing/domain/value-objects/DecalOverride.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface DecalOverrideProps { leagueId: string; diff --git a/core/racing/domain/value-objects/GameConstraints.test.ts b/core/racing/domain/value-objects/GameConstraints.test.ts index 5f4451e3b..37f5581de 100644 --- a/core/racing/domain/value-objects/GameConstraints.test.ts +++ b/core/racing/domain/value-objects/GameConstraints.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { GameConstraints } from './GameConstraints'; const sampleConstraints = { diff --git a/core/racing/domain/value-objects/ImageUrl.test.ts b/core/racing/domain/value-objects/ImageUrl.test.ts index 8be41029a..5412c46ad 100644 --- a/core/racing/domain/value-objects/ImageUrl.test.ts +++ b/core/racing/domain/value-objects/ImageUrl.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { ImageUrl } from './ImageUrl'; describe('ImageUrl', () => { diff --git a/core/racing/domain/value-objects/ImageUrl.ts b/core/racing/domain/value-objects/ImageUrl.ts index 0db9bd3d5..4ba68aa81 100644 --- a/core/racing/domain/value-objects/ImageUrl.ts +++ b/core/racing/domain/value-objects/ImageUrl.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class ImageUrl implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/JoinedAt.test.ts b/core/racing/domain/value-objects/JoinedAt.test.ts index 559d3269a..f68c05453 100644 --- a/core/racing/domain/value-objects/JoinedAt.test.ts +++ b/core/racing/domain/value-objects/JoinedAt.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { JoinedAt } from './JoinedAt'; describe('JoinedAt', () => { diff --git a/core/racing/domain/value-objects/JoinedAt.ts b/core/racing/domain/value-objects/JoinedAt.ts index 705d82716..e52c12672 100644 --- a/core/racing/domain/value-objects/JoinedAt.ts +++ b/core/racing/domain/value-objects/JoinedAt.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class JoinedAt implements ValueObject { private constructor(private readonly value: Date) {} diff --git a/core/racing/domain/value-objects/LeagueDescription.test.ts b/core/racing/domain/value-objects/LeagueDescription.test.ts index 9c16b87f3..173487217 100644 --- a/core/racing/domain/value-objects/LeagueDescription.test.ts +++ b/core/racing/domain/value-objects/LeagueDescription.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LeagueDescription } from './LeagueDescription'; describe('LeagueDescription', () => { diff --git a/core/racing/domain/value-objects/LeagueDescription.ts b/core/racing/domain/value-objects/LeagueDescription.ts index 74004c15f..6995a502e 100644 --- a/core/racing/domain/value-objects/LeagueDescription.ts +++ b/core/racing/domain/value-objects/LeagueDescription.ts @@ -4,8 +4,8 @@ * Represents a valid league description with validation rules. */ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface LeagueDescriptionValidationResult { valid: boolean; diff --git a/core/racing/domain/value-objects/LeagueName.test.ts b/core/racing/domain/value-objects/LeagueName.test.ts index 1468be3da..0be5b6569 100644 --- a/core/racing/domain/value-objects/LeagueName.test.ts +++ b/core/racing/domain/value-objects/LeagueName.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LeagueName } from './LeagueName'; describe('LeagueName', () => { diff --git a/core/racing/domain/value-objects/LeagueName.ts b/core/racing/domain/value-objects/LeagueName.ts index 394e51a66..6742eb734 100644 --- a/core/racing/domain/value-objects/LeagueName.ts +++ b/core/racing/domain/value-objects/LeagueName.ts @@ -4,8 +4,8 @@ * Represents a valid league name with validation rules. */ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface LeagueNameValidationResult { valid: boolean; diff --git a/core/racing/domain/value-objects/LeagueTimezone.test.ts b/core/racing/domain/value-objects/LeagueTimezone.test.ts index bc5e6c9cf..d208cdf89 100644 --- a/core/racing/domain/value-objects/LeagueTimezone.test.ts +++ b/core/racing/domain/value-objects/LeagueTimezone.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LeagueTimezone } from './LeagueTimezone'; describe('LeagueTimezone', () => { diff --git a/core/racing/domain/value-objects/LeagueTimezone.ts b/core/racing/domain/value-objects/LeagueTimezone.ts index 9622d2fe1..86ee1128a 100644 --- a/core/racing/domain/value-objects/LeagueTimezone.ts +++ b/core/racing/domain/value-objects/LeagueTimezone.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface LeagueTimezoneProps { id: string; diff --git a/core/racing/domain/value-objects/LeagueVisibility.test.ts b/core/racing/domain/value-objects/LeagueVisibility.test.ts index 636d45f6a..60cb5e622 100644 --- a/core/racing/domain/value-objects/LeagueVisibility.test.ts +++ b/core/racing/domain/value-objects/LeagueVisibility.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LeagueVisibility } from './LeagueVisibility'; describe('LeagueVisibility', () => { diff --git a/core/racing/domain/value-objects/LiveryDecal.test.ts b/core/racing/domain/value-objects/LiveryDecal.test.ts index 71ec923f3..fd2eb2953 100644 --- a/core/racing/domain/value-objects/LiveryDecal.test.ts +++ b/core/racing/domain/value-objects/LiveryDecal.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { LiveryDecal } from './LiveryDecal'; describe('LiveryDecal', () => { diff --git a/core/racing/domain/value-objects/LiveryDecal.ts b/core/racing/domain/value-objects/LiveryDecal.ts index 423f746af..022dbd572 100644 --- a/core/racing/domain/value-objects/LiveryDecal.ts +++ b/core/racing/domain/value-objects/LiveryDecal.ts @@ -3,8 +3,8 @@ * Represents a decal/logo placed on a livery */ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export type DecalType = 'sponsor' | 'user'; diff --git a/core/racing/domain/value-objects/MembershipFee.test.ts b/core/racing/domain/value-objects/MembershipFee.test.ts index f479c7084..8bb896848 100644 --- a/core/racing/domain/value-objects/MembershipFee.test.ts +++ b/core/racing/domain/value-objects/MembershipFee.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { MembershipFee } from './MembershipFee'; import { Money } from './Money'; diff --git a/core/racing/domain/value-objects/MembershipFee.ts b/core/racing/domain/value-objects/MembershipFee.ts index 497a8f7b0..414c46cb8 100644 --- a/core/racing/domain/value-objects/MembershipFee.ts +++ b/core/racing/domain/value-objects/MembershipFee.ts @@ -5,8 +5,8 @@ import { RacingDomainValidationError } from '../errors/RacingDomainError'; -import type { Money } from './Money'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import type { Money } from './Money'; export type MembershipFeeType = 'season' | 'monthly' | 'per_race'; diff --git a/core/racing/domain/value-objects/Money.test.ts b/core/racing/domain/value-objects/Money.test.ts index e230b198a..cb19a5373 100644 --- a/core/racing/domain/value-objects/Money.test.ts +++ b/core/racing/domain/value-objects/Money.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Money } from './Money'; describe('Money', () => { diff --git a/core/racing/domain/value-objects/MonthlyRecurrencePattern.test.ts b/core/racing/domain/value-objects/MonthlyRecurrencePattern.test.ts index 634d542a6..1bb816094 100644 --- a/core/racing/domain/value-objects/MonthlyRecurrencePattern.test.ts +++ b/core/racing/domain/value-objects/MonthlyRecurrencePattern.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; describe('MonthlyRecurrencePattern', () => { diff --git a/core/racing/domain/value-objects/MonthlyRecurrencePattern.ts b/core/racing/domain/value-objects/MonthlyRecurrencePattern.ts index 1275dd0ae..d80c24636 100644 --- a/core/racing/domain/value-objects/MonthlyRecurrencePattern.ts +++ b/core/racing/domain/value-objects/MonthlyRecurrencePattern.ts @@ -1,7 +1,7 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; -import { ALL_WEEKDAYS } from '../types/Weekday'; -import type { Weekday } from '../types/Weekday'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import type { Weekday } from '../types/Weekday'; +import { ALL_WEEKDAYS } from '../types/Weekday'; export interface MonthlyRecurrencePatternProps { ordinal: 1 | 2 | 3 | 4; diff --git a/core/racing/domain/value-objects/Points.test.ts b/core/racing/domain/value-objects/Points.test.ts index 6eb52ff3f..36c98bb31 100644 --- a/core/racing/domain/value-objects/Points.test.ts +++ b/core/racing/domain/value-objects/Points.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { Points } from './Points'; describe('Points', () => { diff --git a/core/racing/domain/value-objects/PointsTable.test.ts b/core/racing/domain/value-objects/PointsTable.test.ts index 7a226bc5e..991874c19 100644 --- a/core/racing/domain/value-objects/PointsTable.test.ts +++ b/core/racing/domain/value-objects/PointsTable.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { PointsTable } from './PointsTable'; describe('PointsTable', () => { diff --git a/core/racing/domain/value-objects/RaceIncidents.test.ts b/core/racing/domain/value-objects/RaceIncidents.test.ts index 0341b0e19..5e46e8b46 100644 --- a/core/racing/domain/value-objects/RaceIncidents.test.ts +++ b/core/racing/domain/value-objects/RaceIncidents.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { RaceIncidents, type IncidentRecord } from './RaceIncidents'; describe('RaceIncidents', () => { diff --git a/core/racing/domain/value-objects/RaceName.test.ts b/core/racing/domain/value-objects/RaceName.test.ts index 61c04c39e..545ca4afd 100644 --- a/core/racing/domain/value-objects/RaceName.test.ts +++ b/core/racing/domain/value-objects/RaceName.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { RaceName } from './RaceName'; describe('RaceName', () => { diff --git a/core/racing/domain/value-objects/RaceStatus.test.ts b/core/racing/domain/value-objects/RaceStatus.test.ts index 5d9574ae6..667a23cab 100644 --- a/core/racing/domain/value-objects/RaceStatus.test.ts +++ b/core/racing/domain/value-objects/RaceStatus.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { RaceStatus, type RaceStatusValue } from './RaceStatus'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { RaceStatus, type RaceStatusValue } from './RaceStatus'; describe('RaceStatus', () => { it('creates a status and exposes stable value/toString/props', () => { diff --git a/core/racing/domain/value-objects/RaceTimeOfDay.test.ts b/core/racing/domain/value-objects/RaceTimeOfDay.test.ts index 685c35db0..c7c73ebed 100644 --- a/core/racing/domain/value-objects/RaceTimeOfDay.test.ts +++ b/core/racing/domain/value-objects/RaceTimeOfDay.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { RaceTimeOfDay } from './RaceTimeOfDay'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { RaceTimeOfDay } from './RaceTimeOfDay'; describe('RaceTimeOfDay', () => { it('should create valid time', () => { diff --git a/core/racing/domain/value-objects/RaceTimeOfDay.ts b/core/racing/domain/value-objects/RaceTimeOfDay.ts index 5c3525b16..cc37c705c 100644 --- a/core/racing/domain/value-objects/RaceTimeOfDay.ts +++ b/core/racing/domain/value-objects/RaceTimeOfDay.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface RaceTimeOfDayProps { hour: number; diff --git a/core/racing/domain/value-objects/RacingId.test.ts b/core/racing/domain/value-objects/RacingId.test.ts index a20b993d5..d6b538714 100644 --- a/core/racing/domain/value-objects/RacingId.test.ts +++ b/core/racing/domain/value-objects/RacingId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { IRacingId } from './RacingId'; describe('IRacingId', () => { diff --git a/core/racing/domain/value-objects/RacingId.ts b/core/racing/domain/value-objects/RacingId.ts index 60b21af8e..679d2181f 100644 --- a/core/racing/domain/value-objects/RacingId.ts +++ b/core/racing/domain/value-objects/RacingId.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class IRacingId implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/RecurrenceStrategy.test.ts b/core/racing/domain/value-objects/RecurrenceStrategy.test.ts index 301023d34..f898ac729 100644 --- a/core/racing/domain/value-objects/RecurrenceStrategy.test.ts +++ b/core/racing/domain/value-objects/RecurrenceStrategy.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; +import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; import { RecurrenceStrategy } from './RecurrenceStrategy'; import { WeekdaySet } from './WeekdaySet'; -import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; describe('RecurrenceStrategy', () => { describe('weekly', () => { diff --git a/core/racing/domain/value-objects/RecurrenceStrategy.ts b/core/racing/domain/value-objects/RecurrenceStrategy.ts index c1a8b36e6..addef90a0 100644 --- a/core/racing/domain/value-objects/RecurrenceStrategy.ts +++ b/core/racing/domain/value-objects/RecurrenceStrategy.ts @@ -1,7 +1,7 @@ import type { ValueObject } from '@core/shared/domain/ValueObject'; -import { WeekdaySet } from './WeekdaySet'; -import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; +import { WeekdaySet } from './WeekdaySet'; export type WeeklyRecurrenceStrategyProps = { kind: 'weekly'; @@ -84,4 +84,4 @@ export class RecurrenceStrategy implements ValueObject } } -export { RecurrenceStrategyFactory } from './RecurrenceStrategyFactory'; \ No newline at end of file +export { RecurrenceStrategyFactory } from './RecurrenceStrategyFactory'; diff --git a/core/racing/domain/value-objects/RecurrenceStrategyFactory.test.ts b/core/racing/domain/value-objects/RecurrenceStrategyFactory.test.ts index b296e24cf..f56a6b8df 100644 --- a/core/racing/domain/value-objects/RecurrenceStrategyFactory.test.ts +++ b/core/racing/domain/value-objects/RecurrenceStrategyFactory.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/value-objects/RecurrenceStrategyFactory'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/value-objects/RecurrenceStrategyFactory.ts', () => { it('imports', () => { diff --git a/core/racing/domain/value-objects/RecurrenceStrategyFactory.ts b/core/racing/domain/value-objects/RecurrenceStrategyFactory.ts index 3137fc182..cfeb2f53f 100644 --- a/core/racing/domain/value-objects/RecurrenceStrategyFactory.ts +++ b/core/racing/domain/value-objects/RecurrenceStrategyFactory.ts @@ -1,6 +1,6 @@ -import { WeekdaySet } from './WeekdaySet'; import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; import { RecurrenceStrategy } from './RecurrenceStrategy'; +import { WeekdaySet } from './WeekdaySet'; export class RecurrenceStrategyFactory { static weekly(weekdays: WeekdaySet): RecurrenceStrategy { diff --git a/core/racing/domain/value-objects/ScheduledRaceSlot.test.ts b/core/racing/domain/value-objects/ScheduledRaceSlot.test.ts index 6f252197c..fb96840bb 100644 --- a/core/racing/domain/value-objects/ScheduledRaceSlot.test.ts +++ b/core/racing/domain/value-objects/ScheduledRaceSlot.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { ScheduledRaceSlot } from './ScheduledRaceSlot'; +import { describe, expect, it } from 'vitest'; import { LeagueTimezone } from './LeagueTimezone'; +import { ScheduledRaceSlot } from './ScheduledRaceSlot'; describe('ScheduledRaceSlot', () => { it('should create scheduled race slot', () => { diff --git a/core/racing/domain/value-objects/ScheduledRaceSlot.ts b/core/racing/domain/value-objects/ScheduledRaceSlot.ts index f8c610726..9ffced94d 100644 --- a/core/racing/domain/value-objects/ScheduledRaceSlot.ts +++ b/core/racing/domain/value-objects/ScheduledRaceSlot.ts @@ -1,7 +1,7 @@ import { LeagueTimezone } from './LeagueTimezone'; -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface ScheduledRaceSlotProps { roundNumber: number; diff --git a/core/racing/domain/value-objects/SeasonDropPolicy.test.ts b/core/racing/domain/value-objects/SeasonDropPolicy.test.ts index 0f67961dd..0a346f6ca 100644 --- a/core/racing/domain/value-objects/SeasonDropPolicy.test.ts +++ b/core/racing/domain/value-objects/SeasonDropPolicy.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - RacingDomainValidationError, + RacingDomainValidationError, } from '../errors/RacingDomainError'; import { - SeasonDropPolicy, - type SeasonDropStrategy, + SeasonDropPolicy, + type SeasonDropStrategy, } from './SeasonDropPolicy'; describe('SeasonDropPolicy', () => { diff --git a/core/racing/domain/value-objects/SeasonDropPolicy.ts b/core/racing/domain/value-objects/SeasonDropPolicy.ts index 076d6aa61..dbebc0edf 100644 --- a/core/racing/domain/value-objects/SeasonDropPolicy.ts +++ b/core/racing/domain/value-objects/SeasonDropPolicy.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export type SeasonDropStrategy = 'none' | 'bestNResults' | 'dropWorstN'; diff --git a/core/racing/domain/value-objects/SeasonSchedule.test.ts b/core/racing/domain/value-objects/SeasonSchedule.test.ts index 32425d9cd..f9023f0e0 100644 --- a/core/racing/domain/value-objects/SeasonSchedule.test.ts +++ b/core/racing/domain/value-objects/SeasonSchedule.test.ts @@ -1,15 +1,15 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - RacingDomainValidationError, + RacingDomainValidationError, } from '../errors/RacingDomainError'; -import { SeasonSchedule } from './SeasonSchedule'; -import { RaceTimeOfDay } from './RaceTimeOfDay'; import { LeagueTimezone } from './LeagueTimezone'; -import { RecurrenceStrategyFactory } from './RecurrenceStrategy'; -import { WeekdaySet } from './WeekdaySet'; import { MonthlyRecurrencePattern } from './MonthlyRecurrencePattern'; +import { RaceTimeOfDay } from './RaceTimeOfDay'; +import { RecurrenceStrategyFactory } from './RecurrenceStrategy'; +import { SeasonSchedule } from './SeasonSchedule'; +import { WeekdaySet } from './WeekdaySet'; describe('SeasonSchedule', () => { const timeOfDay = RaceTimeOfDay.fromString('20:00'); diff --git a/core/racing/domain/value-objects/SeasonSchedule.ts b/core/racing/domain/value-objects/SeasonSchedule.ts index 0c44bca29..a37968edd 100644 --- a/core/racing/domain/value-objects/SeasonSchedule.ts +++ b/core/racing/domain/value-objects/SeasonSchedule.ts @@ -1,8 +1,8 @@ -import { RaceTimeOfDay } from './RaceTimeOfDay'; -import { LeagueTimezone } from './LeagueTimezone'; -import type { RecurrenceStrategy } from './RecurrenceStrategy'; -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { LeagueTimezone } from './LeagueTimezone'; +import { RaceTimeOfDay } from './RaceTimeOfDay'; +import type { RecurrenceStrategy } from './RecurrenceStrategy'; export interface SeasonScheduleProps { startDate: Date; diff --git a/core/racing/domain/value-objects/SeasonScoringConfig.test.ts b/core/racing/domain/value-objects/SeasonScoringConfig.test.ts index ae313a6d0..a4c3467b6 100644 --- a/core/racing/domain/value-objects/SeasonScoringConfig.test.ts +++ b/core/racing/domain/value-objects/SeasonScoringConfig.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - RacingDomainValidationError, + RacingDomainValidationError, } from '../errors/RacingDomainError'; import { SeasonScoringConfig } from './SeasonScoringConfig'; diff --git a/core/racing/domain/value-objects/SeasonScoringConfig.ts b/core/racing/domain/value-objects/SeasonScoringConfig.ts index 6a6aafdd7..3bcf96e19 100644 --- a/core/racing/domain/value-objects/SeasonScoringConfig.ts +++ b/core/racing/domain/value-objects/SeasonScoringConfig.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; /** * Value Object: SeasonScoringConfig diff --git a/core/racing/domain/value-objects/SeasonStewardingConfig.test.ts b/core/racing/domain/value-objects/SeasonStewardingConfig.test.ts index 68699552c..d64b6e157 100644 --- a/core/racing/domain/value-objects/SeasonStewardingConfig.test.ts +++ b/core/racing/domain/value-objects/SeasonStewardingConfig.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { - RacingDomainValidationError, + RacingDomainValidationError, } from '../errors/RacingDomainError'; import { SeasonStewardingConfig } from './SeasonStewardingConfig'; diff --git a/core/racing/domain/value-objects/SeasonStewardingConfig.ts b/core/racing/domain/value-objects/SeasonStewardingConfig.ts index 1fcd80ed7..45fdbef51 100644 --- a/core/racing/domain/value-objects/SeasonStewardingConfig.ts +++ b/core/racing/domain/value-objects/SeasonStewardingConfig.ts @@ -1,6 +1,6 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; import type { StewardingDecisionMode } from '../entities/League'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export interface SeasonStewardingConfigProps { decisionMode: StewardingDecisionMode; diff --git a/core/racing/domain/value-objects/SessionType.test.ts b/core/racing/domain/value-objects/SessionType.test.ts index f1b2e2ec0..195ac5c12 100644 --- a/core/racing/domain/value-objects/SessionType.test.ts +++ b/core/racing/domain/value-objects/SessionType.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { SessionType, type SessionTypeValue } from './SessionType'; describe('SessionType', () => { diff --git a/core/racing/domain/value-objects/SessionType.ts b/core/racing/domain/value-objects/SessionType.ts index aeacd5cf3..61e2106e9 100644 --- a/core/racing/domain/value-objects/SessionType.ts +++ b/core/racing/domain/value-objects/SessionType.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; /** * Value Object: SessionType diff --git a/core/racing/domain/value-objects/SponsorshipPricing.test.ts b/core/racing/domain/value-objects/SponsorshipPricing.test.ts index 5dafbe150..3deb71119 100644 --- a/core/racing/domain/value-objects/SponsorshipPricing.test.ts +++ b/core/racing/domain/value-objects/SponsorshipPricing.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect } from 'vitest'; -import { SponsorshipPricing } from './SponsorshipPricing'; +import { describe, expect, it } from 'vitest'; import { Money } from './Money'; +import { SponsorshipPricing } from './SponsorshipPricing'; describe('SponsorshipPricing', () => { const mainSlot = { diff --git a/core/racing/domain/value-objects/SponsorshipPricing.ts b/core/racing/domain/value-objects/SponsorshipPricing.ts index bcf6a8c78..6acd318ca 100644 --- a/core/racing/domain/value-objects/SponsorshipPricing.ts +++ b/core/racing/domain/value-objects/SponsorshipPricing.ts @@ -5,8 +5,8 @@ * Used by drivers, teams, races, and leagues to define their sponsorship offerings. */ -import { Money } from './Money'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { Money } from './Money'; export interface SponsorshipSlotConfig { tier: 'main' | 'secondary'; diff --git a/core/racing/domain/value-objects/TeamCreatedAt.test.ts b/core/racing/domain/value-objects/TeamCreatedAt.test.ts index 31e936146..2a6828220 100644 --- a/core/racing/domain/value-objects/TeamCreatedAt.test.ts +++ b/core/racing/domain/value-objects/TeamCreatedAt.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TeamCreatedAt } from './TeamCreatedAt'; describe('TeamCreatedAt', () => { diff --git a/core/racing/domain/value-objects/TeamCreatedAt.ts b/core/racing/domain/value-objects/TeamCreatedAt.ts index 76c89e67b..a8b90d83e 100644 --- a/core/racing/domain/value-objects/TeamCreatedAt.ts +++ b/core/racing/domain/value-objects/TeamCreatedAt.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TeamCreatedAt implements ValueObject { private constructor(private readonly value: Date) {} diff --git a/core/racing/domain/value-objects/TeamDescription.test.ts b/core/racing/domain/value-objects/TeamDescription.test.ts index 7795961e2..2932ee5a1 100644 --- a/core/racing/domain/value-objects/TeamDescription.test.ts +++ b/core/racing/domain/value-objects/TeamDescription.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TeamDescription } from './TeamDescription'; describe('TeamDescription', () => { diff --git a/core/racing/domain/value-objects/TeamDescription.ts b/core/racing/domain/value-objects/TeamDescription.ts index b8ee50ede..c69fbea01 100644 --- a/core/racing/domain/value-objects/TeamDescription.ts +++ b/core/racing/domain/value-objects/TeamDescription.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TeamDescription implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/TeamDrivingReasonCode.test.ts b/core/racing/domain/value-objects/TeamDrivingReasonCode.test.ts index 19e13b593..b71418a2a 100644 --- a/core/racing/domain/value-objects/TeamDrivingReasonCode.test.ts +++ b/core/racing/domain/value-objects/TeamDrivingReasonCode.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from 'vitest'; -import { TeamDrivingReasonCode, TEAM_DRIVING_REASON_CODES } from './TeamDrivingReasonCode'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { TEAM_DRIVING_REASON_CODES, TeamDrivingReasonCode } from './TeamDrivingReasonCode'; describe('TeamDrivingReasonCode', () => { describe('create', () => { diff --git a/core/racing/domain/value-objects/TeamName.test.ts b/core/racing/domain/value-objects/TeamName.test.ts index 6c96473f6..9dc88a802 100644 --- a/core/racing/domain/value-objects/TeamName.test.ts +++ b/core/racing/domain/value-objects/TeamName.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TeamName } from './TeamName'; describe('TeamName', () => { diff --git a/core/racing/domain/value-objects/TeamName.ts b/core/racing/domain/value-objects/TeamName.ts index 977cf2041..f6ef18a56 100644 --- a/core/racing/domain/value-objects/TeamName.ts +++ b/core/racing/domain/value-objects/TeamName.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TeamName implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/TeamRatingDelta.test.ts b/core/racing/domain/value-objects/TeamRatingDelta.test.ts index cd76ae0ff..242588c39 100644 --- a/core/racing/domain/value-objects/TeamRatingDelta.test.ts +++ b/core/racing/domain/value-objects/TeamRatingDelta.test.ts @@ -1,5 +1,6 @@ -import { TeamRatingDelta } from './TeamRatingDelta'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { TeamRatingDelta } from './TeamRatingDelta'; describe('TeamRatingDelta', () => { describe('create', () => { diff --git a/core/racing/domain/value-objects/TeamRatingDimensionKey.test.ts b/core/racing/domain/value-objects/TeamRatingDimensionKey.test.ts index 72d0b4f4c..85acb9ad8 100644 --- a/core/racing/domain/value-objects/TeamRatingDimensionKey.test.ts +++ b/core/racing/domain/value-objects/TeamRatingDimensionKey.test.ts @@ -1,5 +1,6 @@ -import { TeamRatingDimensionKey } from './TeamRatingDimensionKey'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { TeamRatingDimensionKey } from './TeamRatingDimensionKey'; describe('TeamRatingDimensionKey', () => { describe('create', () => { diff --git a/core/racing/domain/value-objects/TeamRatingEventId.test.ts b/core/racing/domain/value-objects/TeamRatingEventId.test.ts index 423bd0b02..b4821a9a4 100644 --- a/core/racing/domain/value-objects/TeamRatingEventId.test.ts +++ b/core/racing/domain/value-objects/TeamRatingEventId.test.ts @@ -1,5 +1,6 @@ -import { TeamRatingEventId } from './TeamRatingEventId'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { TeamRatingEventId } from './TeamRatingEventId'; describe('TeamRatingEventId', () => { describe('create', () => { diff --git a/core/racing/domain/value-objects/TeamRatingValue.test.ts b/core/racing/domain/value-objects/TeamRatingValue.test.ts index e8543cb87..b14e9773a 100644 --- a/core/racing/domain/value-objects/TeamRatingValue.test.ts +++ b/core/racing/domain/value-objects/TeamRatingValue.test.ts @@ -1,5 +1,6 @@ -import { TeamRatingValue } from './TeamRatingValue'; +import { describe, expect, it } from 'vitest'; import { RacingDomainValidationError } from '../errors/RacingDomainError'; +import { TeamRatingValue } from './TeamRatingValue'; describe('TeamRatingValue', () => { describe('create', () => { diff --git a/core/racing/domain/value-objects/TeamTag.test.ts b/core/racing/domain/value-objects/TeamTag.test.ts index a8d5ccca8..0e44c906a 100644 --- a/core/racing/domain/value-objects/TeamTag.test.ts +++ b/core/racing/domain/value-objects/TeamTag.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TeamTag } from './TeamTag'; describe('TeamTag', () => { diff --git a/core/racing/domain/value-objects/TeamTag.ts b/core/racing/domain/value-objects/TeamTag.ts index 2557864c5..4a9661e9e 100644 --- a/core/racing/domain/value-objects/TeamTag.ts +++ b/core/racing/domain/value-objects/TeamTag.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TeamTag implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/TrackCountry.test.ts b/core/racing/domain/value-objects/TrackCountry.test.ts index dc834a5ee..e09a8b63a 100644 --- a/core/racing/domain/value-objects/TrackCountry.test.ts +++ b/core/racing/domain/value-objects/TrackCountry.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackCountry } from './TrackCountry'; describe('TrackCountry', () => { diff --git a/core/racing/domain/value-objects/TrackCountry.ts b/core/racing/domain/value-objects/TrackCountry.ts index e00666480..c99627072 100644 --- a/core/racing/domain/value-objects/TrackCountry.ts +++ b/core/racing/domain/value-objects/TrackCountry.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TrackCountry implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/TrackGameId.test.ts b/core/racing/domain/value-objects/TrackGameId.test.ts index 0aa2a36c4..f26da4012 100644 --- a/core/racing/domain/value-objects/TrackGameId.test.ts +++ b/core/racing/domain/value-objects/TrackGameId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackGameId } from './TrackGameId'; describe('TrackGameId', () => { diff --git a/core/racing/domain/value-objects/TrackGameId.ts b/core/racing/domain/value-objects/TrackGameId.ts index a64b29d9d..64e21319a 100644 --- a/core/racing/domain/value-objects/TrackGameId.ts +++ b/core/racing/domain/value-objects/TrackGameId.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TrackGameId implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/TrackId.test.ts b/core/racing/domain/value-objects/TrackId.test.ts index 379e5da54..3cd6d5c8d 100644 --- a/core/racing/domain/value-objects/TrackId.test.ts +++ b/core/racing/domain/value-objects/TrackId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackId } from './TrackId'; describe('TrackId', () => { diff --git a/core/racing/domain/value-objects/TrackImageUrl.test.ts b/core/racing/domain/value-objects/TrackImageUrl.test.ts index 52323dde7..e686366e1 100644 --- a/core/racing/domain/value-objects/TrackImageUrl.test.ts +++ b/core/racing/domain/value-objects/TrackImageUrl.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackImageUrl } from './TrackImageUrl'; describe('TrackImageUrl', () => { diff --git a/core/racing/domain/value-objects/TrackImageUrl.ts b/core/racing/domain/value-objects/TrackImageUrl.ts index 64598d161..8f003a832 100644 --- a/core/racing/domain/value-objects/TrackImageUrl.ts +++ b/core/racing/domain/value-objects/TrackImageUrl.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TrackImageUrl implements ValueObject { private constructor(private readonly value: string | undefined) {} diff --git a/core/racing/domain/value-objects/TrackLength.test.ts b/core/racing/domain/value-objects/TrackLength.test.ts index 4f35534f3..3c024c9f5 100644 --- a/core/racing/domain/value-objects/TrackLength.test.ts +++ b/core/racing/domain/value-objects/TrackLength.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackLength } from './TrackLength'; describe('TrackLength', () => { diff --git a/core/racing/domain/value-objects/TrackLength.ts b/core/racing/domain/value-objects/TrackLength.ts index 9d14848d6..909491a29 100644 --- a/core/racing/domain/value-objects/TrackLength.ts +++ b/core/racing/domain/value-objects/TrackLength.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TrackLength implements ValueObject { private constructor(private readonly value: number) {} diff --git a/core/racing/domain/value-objects/TrackName.test.ts b/core/racing/domain/value-objects/TrackName.test.ts index 9ea1b5a0b..dc92813d8 100644 --- a/core/racing/domain/value-objects/TrackName.test.ts +++ b/core/racing/domain/value-objects/TrackName.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackName } from './TrackName'; describe('TrackName', () => { diff --git a/core/racing/domain/value-objects/TrackShortName.test.ts b/core/racing/domain/value-objects/TrackShortName.test.ts index 81b949db2..114578bfe 100644 --- a/core/racing/domain/value-objects/TrackShortName.test.ts +++ b/core/racing/domain/value-objects/TrackShortName.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackShortName } from './TrackShortName'; describe('TrackShortName', () => { diff --git a/core/racing/domain/value-objects/TrackShortName.ts b/core/racing/domain/value-objects/TrackShortName.ts index 7709adfc6..0967d3815 100644 --- a/core/racing/domain/value-objects/TrackShortName.ts +++ b/core/racing/domain/value-objects/TrackShortName.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TrackShortName implements ValueObject { private constructor(private readonly value: string) {} diff --git a/core/racing/domain/value-objects/TrackTurns.test.ts b/core/racing/domain/value-objects/TrackTurns.test.ts index 9197f7955..b0e75d513 100644 --- a/core/racing/domain/value-objects/TrackTurns.test.ts +++ b/core/racing/domain/value-objects/TrackTurns.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { TrackTurns } from './TrackTurns'; describe('TrackTurns', () => { diff --git a/core/racing/domain/value-objects/TrackTurns.ts b/core/racing/domain/value-objects/TrackTurns.ts index 976d000c1..dc6d0be57 100644 --- a/core/racing/domain/value-objects/TrackTurns.ts +++ b/core/racing/domain/value-objects/TrackTurns.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; export class TrackTurns implements ValueObject { private constructor(private readonly value: number) {} diff --git a/core/racing/domain/value-objects/WeekdaySet.test.ts b/core/racing/domain/value-objects/WeekdaySet.test.ts index 54fdca777..5c207baa4 100644 --- a/core/racing/domain/value-objects/WeekdaySet.test.ts +++ b/core/racing/domain/value-objects/WeekdaySet.test.ts @@ -1,4 +1,5 @@ import * as mod from '@core/racing/domain/value-objects/WeekdaySet'; +import { describe, expect, it } from 'vitest'; describe('racing/domain/value-objects/WeekdaySet.ts', () => { it('imports', () => { diff --git a/core/racing/domain/value-objects/WeekdaySet.ts b/core/racing/domain/value-objects/WeekdaySet.ts index 6f23ddefa..81ca7dc97 100644 --- a/core/racing/domain/value-objects/WeekdaySet.ts +++ b/core/racing/domain/value-objects/WeekdaySet.ts @@ -1,7 +1,7 @@ +import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../errors/RacingDomainError'; import type { Weekday } from '../types/Weekday'; import { weekdayToIndex } from '../types/Weekday'; -import { RacingDomainValidationError } from '../errors/RacingDomainError'; -import type { ValueObject } from '@core/shared/domain/ValueObject'; export interface WeekdaySetProps { days: Weekday[]; diff --git a/core/racing/domain/value-objects/driver/DriverBio.test.ts b/core/racing/domain/value-objects/driver/DriverBio.test.ts index 6cc3709b2..e96f584f7 100644 --- a/core/racing/domain/value-objects/driver/DriverBio.test.ts +++ b/core/racing/domain/value-objects/driver/DriverBio.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { DriverBio } from './DriverBio'; describe('DriverBio', () => { diff --git a/core/racing/domain/value-objects/driver/DriverBio.ts b/core/racing/domain/value-objects/driver/DriverBio.ts index f9606da10..afdcb5b2b 100644 --- a/core/racing/domain/value-objects/driver/DriverBio.ts +++ b/core/racing/domain/value-objects/driver/DriverBio.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../../errors/RacingDomainError'; export interface DriverBioProps { value: string; diff --git a/core/racing/domain/value-objects/driver/DriverId.test.ts b/core/racing/domain/value-objects/driver/DriverId.test.ts index 2b37bbb9b..63825af93 100644 --- a/core/racing/domain/value-objects/driver/DriverId.test.ts +++ b/core/racing/domain/value-objects/driver/DriverId.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { DriverId } from './DriverId'; describe('DriverId', () => { diff --git a/core/racing/domain/value-objects/driver/DriverId.ts b/core/racing/domain/value-objects/driver/DriverId.ts index cc654ba46..fd9e5931e 100644 --- a/core/racing/domain/value-objects/driver/DriverId.ts +++ b/core/racing/domain/value-objects/driver/DriverId.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../../errors/RacingDomainError'; export interface DriverIdProps { value: string; diff --git a/core/racing/domain/value-objects/driver/DriverName.test.ts b/core/racing/domain/value-objects/driver/DriverName.test.ts index a5c63ccec..f9ff91796 100644 --- a/core/racing/domain/value-objects/driver/DriverName.test.ts +++ b/core/racing/domain/value-objects/driver/DriverName.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect } from 'vitest'; +import { describe, expect, it } from 'vitest'; import { DriverName } from './DriverName'; describe('DriverName', () => { diff --git a/core/racing/domain/value-objects/driver/DriverName.ts b/core/racing/domain/value-objects/driver/DriverName.ts index 4000fea50..296d1cc8c 100644 --- a/core/racing/domain/value-objects/driver/DriverName.ts +++ b/core/racing/domain/value-objects/driver/DriverName.ts @@ -1,5 +1,5 @@ -import { RacingDomainValidationError } from '../../errors/RacingDomainError'; import type { ValueObject } from '@core/shared/domain/ValueObject'; +import { RacingDomainValidationError } from '../../errors/RacingDomainError'; export interface DriverNameProps { value: string; diff --git a/core/shared/domain/Service.ts b/core/shared/domain/Service.ts index c28a98cc6..56e3c0631 100644 --- a/core/shared/domain/Service.ts +++ b/core/shared/domain/Service.ts @@ -1,5 +1,5 @@ -import { Result } from './Result'; import type { DomainErrorProps } from '../errors/DomainError'; +import { Result } from './Result'; export interface DomainService { readonly serviceName?: string; diff --git a/core/social/application/use-cases/GetCurrentUserSocialUseCase.test.ts b/core/social/application/use-cases/GetCurrentUserSocialUseCase.test.ts index 31e4a4352..f4dc1cf91 100644 --- a/core/social/application/use-cases/GetCurrentUserSocialUseCase.test.ts +++ b/core/social/application/use-cases/GetCurrentUserSocialUseCase.test.ts @@ -1,12 +1,12 @@ import { Driver } from '@core/racing/domain/entities/Driver'; import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { SocialGraphRepository } from '../../domain/repositories/SocialGraphRepository'; import { GetCurrentUserSocialUseCase, type GetCurrentUserSocialApplicationError, type GetCurrentUserSocialInput, } from './GetCurrentUserSocialUseCase'; -import { SocialGraphRepository } from '../../domain/repositories/SocialGraphRepository'; describe('GetCurrentUserSocialUseCase', () => { let socialGraphRepository: { diff --git a/core/social/application/use-cases/GetCurrentUserSocialUseCase.ts b/core/social/application/use-cases/GetCurrentUserSocialUseCase.ts index eadaecb38..145561c82 100644 --- a/core/social/application/use-cases/GetCurrentUserSocialUseCase.ts +++ b/core/social/application/use-cases/GetCurrentUserSocialUseCase.ts @@ -1,7 +1,7 @@ -import { SocialGraphRepository } from '../../domain/repositories/SocialGraphRepository'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { SocialGraphRepository } from '../../domain/repositories/SocialGraphRepository'; import type { SocialFriendSummary, SocialUserSummary } from '../types/SocialUser'; export interface GetCurrentUserSocialParams { diff --git a/core/social/application/use-cases/GetUserFeedUseCase.test.ts b/core/social/application/use-cases/GetUserFeedUseCase.test.ts index 4970a7fb1..2c18d405a 100644 --- a/core/social/application/use-cases/GetUserFeedUseCase.test.ts +++ b/core/social/application/use-cases/GetUserFeedUseCase.test.ts @@ -1,12 +1,12 @@ import type { Logger } from '@core/shared/domain/Logger'; import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import type { FeedRepository } from '../../domain/repositories/FeedRepository'; import type { FeedItem } from '../../domain/types/FeedItem'; import { GetUserFeedUseCase, type GetUserFeedApplicationError, type GetUserFeedInput, } from './GetUserFeedUseCase'; -import type { FeedRepository } from '../../domain/repositories/FeedRepository'; describe('GetUserFeedUseCase', () => { let feedRepository: FeedRepository & { getFeedForDriver: Mock }; diff --git a/core/social/application/use-cases/GetUserFeedUseCase.ts b/core/social/application/use-cases/GetUserFeedUseCase.ts index 20f9cf144..8c656c1f3 100644 --- a/core/social/application/use-cases/GetUserFeedUseCase.ts +++ b/core/social/application/use-cases/GetUserFeedUseCase.ts @@ -1,7 +1,7 @@ -import { FeedRepository } from '../../domain/repositories/FeedRepository'; import type { Logger } from '@core/shared/domain/Logger'; import { Result } from '@core/shared/domain/Result'; import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; +import { FeedRepository } from '../../domain/repositories/FeedRepository'; import type { FeedItem } from '../../domain/types/FeedItem'; export interface GetUserFeedParams { diff --git a/core/social/domain/errors/SocialDomainError.ts b/core/social/domain/errors/SocialDomainError.ts index 11a7afc57..99c6df59a 100644 --- a/core/social/domain/errors/SocialDomainError.ts +++ b/core/social/domain/errors/SocialDomainError.ts @@ -1,4 +1,4 @@ -import type { DomainError, CommonDomainErrorKind } from '@core/shared/errors/DomainError'; +import type { CommonDomainErrorKind, DomainError } from '@core/shared/errors/DomainError'; /** * Domain Error: SocialDomainError