diff --git a/apps/api/src/app.module.ts b/apps/api/src/app.module.ts index 8409d0cf3..e7a55d2a4 100644 --- a/apps/api/src/app.module.ts +++ b/apps/api/src/app.module.ts @@ -1,5 +1,6 @@ import { MiddlewareConsumer, Module, type NestModule } from '@nestjs/common'; +import { AdminModule } from './domain/admin/AdminModule'; import { AnalyticsModule } from './domain/analytics/AnalyticsModule'; import { AuthModule } from './domain/auth/AuthModule'; import { BootstrapModule } from './domain/bootstrap/BootstrapModule'; @@ -12,7 +13,6 @@ import { LoggingModule } from './domain/logging/LoggingModule'; import { MediaModule } from './domain/media/MediaModule'; import { NotificationsModule } from './domain/notifications/NotificationsModule'; import { PaymentsModule } from './domain/payments/PaymentsModule'; -import { AdminModule } from './domain/admin/AdminModule'; import { PolicyModule } from './domain/policy/PolicyModule'; import { ProtestsModule } from './domain/protests/ProtestsModule'; import { RaceModule } from './domain/race/RaceModule'; diff --git a/apps/api/src/config/feature-loader.test.ts b/apps/api/src/config/feature-loader.test.ts index bab0794aa..734d63695 100644 --- a/apps/api/src/config/feature-loader.test.ts +++ b/apps/api/src/config/feature-loader.test.ts @@ -4,8 +4,8 @@ * Run with: npm test -- feature-loader.test.ts */ -import { describe, it, expect, beforeEach } from 'vitest'; -import { loadFeatureConfig, isFeatureEnabled, getFeatureState, getAllFeatures } from './feature-loader'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { getAllFeatures, getFeatureState, isFeatureEnabled, loadFeatureConfig } from './feature-loader'; import { FlattenedFeatures } from './feature-types'; describe('Feature Flag Configuration', () => { diff --git a/apps/api/src/config/feature-loader.ts b/apps/api/src/config/feature-loader.ts index fdd7f6d44..0e21e5e1d 100644 --- a/apps/api/src/config/feature-loader.ts +++ b/apps/api/src/config/feature-loader.ts @@ -1,10 +1,10 @@ -import { featureConfig } from './features.config'; -import { - FeatureFlagConfig, - FlattenedFeatures, - ConfigLoadResult, - FeatureState +import { + ConfigLoadResult, + FeatureFlagConfig, + FeatureState, + FlattenedFeatures } from './feature-types'; +import { featureConfig } from './features.config'; /** * Default configuration path relative to project root diff --git a/apps/api/src/config/integration.test.ts b/apps/api/src/config/integration.test.ts index 0a619d1fe..71d5cc9b2 100644 --- a/apps/api/src/config/integration.test.ts +++ b/apps/api/src/config/integration.test.ts @@ -2,8 +2,8 @@ * Integration test to verify the feature flag system works end-to-end */ -import { describe, it, expect } from 'vitest'; -import { loadFeatureConfig, isFeatureEnabled, getFeatureState } from './feature-loader'; +import { describe, expect, it } from 'vitest'; +import { getFeatureState, isFeatureEnabled, loadFeatureConfig } from './feature-loader'; describe('Feature Flag Integration Test', () => { it('should load config and provide correct feature states', async () => { diff --git a/apps/api/src/domain/admin/Admin.http.test.ts b/apps/api/src/domain/admin/Admin.http.test.ts index 8049010c3..f7d4d2244 100644 --- a/apps/api/src/domain/admin/Admin.http.test.ts +++ b/apps/api/src/domain/admin/Admin.http.test.ts @@ -1,6 +1,6 @@ import 'reflect-metadata'; -import { ValidationPipe, INestApplication } from '@nestjs/common'; +import { INestApplication, ValidationPipe } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; import { Test } from '@nestjs/testing'; import request from 'supertest'; diff --git a/apps/api/src/domain/admin/AdminController.test.ts b/apps/api/src/domain/admin/AdminController.test.ts index dadf8abc0..f125ed8a3 100644 --- a/apps/api/src/domain/admin/AdminController.test.ts +++ b/apps/api/src/domain/admin/AdminController.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect, vi } from 'vitest'; +import { describe, expect, it, vi } from 'vitest'; import { AdminController } from './AdminController'; +import { DashboardStatsResponseDto } from './dto/DashboardStatsResponseDto'; import { ListUsersRequestDto } from './dtos/ListUsersRequestDto'; import { UserListResponseDto, UserResponseDto } from './dtos/UserResponseDto'; -import { DashboardStatsResponseDto } from './dto/DashboardStatsResponseDto'; describe('AdminController', () => { let controller: AdminController; diff --git a/apps/api/src/domain/admin/AdminController.ts b/apps/api/src/domain/admin/AdminController.ts index 34908f6cb..cc295a9d7 100644 --- a/apps/api/src/domain/admin/AdminController.ts +++ b/apps/api/src/domain/admin/AdminController.ts @@ -1,14 +1,14 @@ +import type { ListUsersInput } from '@core/admin/application/use-cases/ListUsersUseCase'; import { Controller, Get, Inject, Query, Req, UseGuards } from '@nestjs/common'; import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; -import { AdminService } from './AdminService'; -import { ListUsersRequestDto } from './dtos/ListUsersRequestDto'; -import { UserListResponseDto } from './dtos/UserResponseDto'; -import { DashboardStatsResponseDto } from './dto/DashboardStatsResponseDto'; +import type { Request } from 'express'; +import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import { RequireAuthenticatedUser } from '../auth/RequireAuthenticatedUser'; import { RequireRoles } from '../auth/RequireRoles'; -import { AuthorizationGuard } from '../auth/AuthorizationGuard'; -import type { Request } from 'express'; -import type { ListUsersInput } from '@core/admin/application/use-cases/ListUsersUseCase'; +import { AdminService } from './AdminService'; +import { DashboardStatsResponseDto } from './dto/DashboardStatsResponseDto'; +import { ListUsersRequestDto } from './dtos/ListUsersRequestDto'; +import { UserListResponseDto } from './dtos/UserResponseDto'; @ApiTags('admin') @Controller('admin') diff --git a/apps/api/src/domain/admin/AdminModule.ts b/apps/api/src/domain/admin/AdminModule.ts index c569c5a06..10de29c11 100644 --- a/apps/api/src/domain/admin/AdminModule.ts +++ b/apps/api/src/domain/admin/AdminModule.ts @@ -1,13 +1,13 @@ +import { ListUsersUseCase } from '@core/admin/application/use-cases/ListUsersUseCase'; +import type { IAdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; import type { Provider } from '@nestjs/common'; import { Module } from '@nestjs/common'; import { InMemoryAdminPersistenceModule } from '../../persistence/inmemory/InMemoryAdminPersistenceModule'; -import { AdminService } from './AdminService'; -import { AdminController } from './AdminController'; -import { AuthModule } from '../auth/AuthModule'; -import { ListUsersUseCase } from '@core/admin/application/use-cases/ListUsersUseCase'; -import { GetDashboardStatsUseCase } from './use-cases/GetDashboardStatsUseCase'; import { InitializationLogger } from '../../shared/logging/InitializationLogger'; -import type { IAdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; +import { AuthModule } from '../auth/AuthModule'; +import { AdminController } from './AdminController'; +import { AdminService } from './AdminService'; +import { GetDashboardStatsUseCase } from './use-cases/GetDashboardStatsUseCase'; export const ADMIN_USER_REPOSITORY_TOKEN = 'IAdminUserRepository'; diff --git a/apps/api/src/domain/admin/AdminService.test.ts b/apps/api/src/domain/admin/AdminService.test.ts index 45d05f560..dbcce7fcf 100644 --- a/apps/api/src/domain/admin/AdminService.test.ts +++ b/apps/api/src/domain/admin/AdminService.test.ts @@ -1,7 +1,7 @@ -import { AdminService } from './AdminService'; import { AdminUser } from '@core/admin/domain/entities/AdminUser'; import { Result } from '@core/shared/domain/Result'; -import { vi, describe, it, expect, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; +import { AdminService } from './AdminService'; // Mock use cases const mockListUsersUseCase = { diff --git a/apps/api/src/domain/admin/AdminService.ts b/apps/api/src/domain/admin/AdminService.ts index 5efa597fb..8a1e9f742 100644 --- a/apps/api/src/domain/admin/AdminService.ts +++ b/apps/api/src/domain/admin/AdminService.ts @@ -1,9 +1,9 @@ -import { Injectable } from '@nestjs/common'; -import { ListUsersUseCase, ListUsersInput, ListUsersResult } from '@core/admin/application/use-cases/ListUsersUseCase'; -import { GetDashboardStatsUseCase, GetDashboardStatsInput } from './use-cases/GetDashboardStatsUseCase'; -import { UserListResponseDto, UserResponseDto } from './dtos/UserResponseDto'; -import { DashboardStatsResponseDto } from './dto/DashboardStatsResponseDto'; +import { ListUsersInput, ListUsersResult, ListUsersUseCase } from '@core/admin/application/use-cases/ListUsersUseCase'; import type { AdminUser } from '@core/admin/domain/entities/AdminUser'; +import { Injectable } from '@nestjs/common'; +import { DashboardStatsResponseDto } from './dto/DashboardStatsResponseDto'; +import { UserListResponseDto, UserResponseDto } from './dtos/UserResponseDto'; +import { GetDashboardStatsInput, GetDashboardStatsUseCase } from './use-cases/GetDashboardStatsUseCase'; @Injectable() export class AdminService { diff --git a/apps/api/src/domain/admin/dtos/ListUsersRequestDto.ts b/apps/api/src/domain/admin/dtos/ListUsersRequestDto.ts index 0d99266b9..97291166d 100644 --- a/apps/api/src/domain/admin/dtos/ListUsersRequestDto.ts +++ b/apps/api/src/domain/admin/dtos/ListUsersRequestDto.ts @@ -1,5 +1,5 @@ import { ApiPropertyOptional } from '@nestjs/swagger'; -import { IsOptional, IsString, IsNumber, Min, Max } from 'class-validator'; +import { IsNumber, IsOptional, IsString, Max, Min } from 'class-validator'; export class ListUsersRequestDto { @ApiPropertyOptional({ diff --git a/apps/api/src/domain/admin/presenters/ListUsersPresenter.test.ts b/apps/api/src/domain/admin/presenters/ListUsersPresenter.test.ts index e5437c776..f0c42e6b9 100644 --- a/apps/api/src/domain/admin/presenters/ListUsersPresenter.test.ts +++ b/apps/api/src/domain/admin/presenters/ListUsersPresenter.test.ts @@ -1,6 +1,6 @@ -import { ListUsersPresenter } from './ListUsersPresenter'; import { ListUsersResult } from '@core/admin/application/use-cases/ListUsersUseCase'; import { AdminUser } from '@core/admin/domain/entities/AdminUser'; +import { ListUsersPresenter } from './ListUsersPresenter'; describe('ListUsersPresenter', () => { describe('TDD - Test First', () => { diff --git a/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts b/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts index 0b89ef603..3e85c8072 100644 --- a/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts +++ b/apps/api/src/domain/admin/presenters/ListUsersPresenter.ts @@ -1,7 +1,7 @@ -import { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { ListUsersResult } from '@core/admin/application/use-cases/ListUsersUseCase'; -import { UserListResponseDto, UserResponseDto } from '../dtos/UserResponseDto'; import type { AdminUser } from '@core/admin/domain/entities/AdminUser'; +import { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import { UserListResponseDto, UserResponseDto } from '../dtos/UserResponseDto'; export type ListUsersViewModel = UserListResponseDto; diff --git a/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts b/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts index 31a992fc8..3e52b23dc 100644 --- a/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts +++ b/apps/api/src/domain/admin/use-cases/GetDashboardStatsUseCase.ts @@ -1,8 +1,8 @@ -import { Result } from '@core/shared/domain/Result'; -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { IAdminUserRepository } from '@core/admin/domain/repositories/AdminUserRepository'; import { AuthorizationService } from '@core/admin/domain/services/AuthorizationService'; import { UserId } from '@core/admin/domain/value-objects/UserId'; +import { Result } from '@core/shared/domain/Result'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; export interface DashboardStatsResult { totalUsers: number; diff --git a/apps/api/src/domain/analytics/AnalyticsController.test.ts b/apps/api/src/domain/analytics/AnalyticsController.test.ts index 0fb545c2d..92bce4bd4 100644 --- a/apps/api/src/domain/analytics/AnalyticsController.test.ts +++ b/apps/api/src/domain/analytics/AnalyticsController.test.ts @@ -1,21 +1,21 @@ import 'reflect-metadata'; +import { EngagementAction, EngagementEntityType } from '@core/analytics/domain/types/EngagementEvent'; +import { EntityType, VisitorType } from '@core/analytics/domain/types/PageView'; import { Reflector } from '@nestjs/core'; import { Test } from '@nestjs/testing'; +import type { Response } from 'express'; import request from 'supertest'; import { vi } from 'vitest'; -import { AnalyticsController } from './AnalyticsController'; -import { AnalyticsService } from './AnalyticsService'; -import type { Response } from 'express'; -import { EntityType, VisitorType } from '@core/analytics/domain/types/PageView'; -import { EngagementAction, EngagementEntityType } from '@core/analytics/domain/types/EngagementEvent'; -import type { RecordEngagementOutputDTO } from './dtos/RecordEngagementOutputDTO'; -import type { RecordPageViewOutputDTO } from './dtos/RecordPageViewOutputDTO'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; +import { AnalyticsController } from './AnalyticsController'; +import { AnalyticsService } from './AnalyticsService'; +import type { RecordEngagementOutputDTO } from './dtos/RecordEngagementOutputDTO'; +import type { RecordPageViewOutputDTO } from './dtos/RecordPageViewOutputDTO'; describe('AnalyticsController', () => { let controller: AnalyticsController; diff --git a/apps/api/src/domain/analytics/AnalyticsController.ts b/apps/api/src/domain/analytics/AnalyticsController.ts index 9300d604b..b11312bf5 100644 --- a/apps/api/src/domain/analytics/AnalyticsController.ts +++ b/apps/api/src/domain/analytics/AnalyticsController.ts @@ -1,14 +1,14 @@ -import { Controller, Get, Post, Body, Res, HttpStatus, Inject } from '@nestjs/common'; -import { ApiTags, ApiOperation, ApiBody, ApiResponse } from '@nestjs/swagger'; +import { Body, Controller, Get, HttpStatus, Inject, Post, Res } from '@nestjs/common'; +import { ApiBody, ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import type { Response } from 'express'; import { Public } from '../auth/Public'; -import { RecordPageViewInputDTO } from './dtos/RecordPageViewInputDTO'; -import { RecordPageViewOutputDTO } from './dtos/RecordPageViewOutputDTO'; +import { AnalyticsService } from './AnalyticsService'; +import { GetAnalyticsMetricsOutputDTO } from './dtos/GetAnalyticsMetricsOutputDTO'; +import { GetDashboardDataOutputDTO } from './dtos/GetDashboardDataOutputDTO'; import { RecordEngagementInputDTO } from './dtos/RecordEngagementInputDTO'; import { RecordEngagementOutputDTO } from './dtos/RecordEngagementOutputDTO'; -import { GetDashboardDataOutputDTO } from './dtos/GetDashboardDataOutputDTO'; -import { GetAnalyticsMetricsOutputDTO } from './dtos/GetAnalyticsMetricsOutputDTO'; -import { AnalyticsService } from './AnalyticsService'; +import { RecordPageViewInputDTO } from './dtos/RecordPageViewInputDTO'; +import { RecordPageViewOutputDTO } from './dtos/RecordPageViewOutputDTO'; type RecordPageViewInput = RecordPageViewInputDTO; type RecordEngagementInput = RecordEngagementInputDTO; diff --git a/apps/api/src/domain/analytics/AnalyticsModule.test.ts b/apps/api/src/domain/analytics/AnalyticsModule.test.ts index a0000cdc1..6fb5c53a8 100644 --- a/apps/api/src/domain/analytics/AnalyticsModule.test.ts +++ b/apps/api/src/domain/analytics/AnalyticsModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { AnalyticsModule } from './AnalyticsModule'; import { AnalyticsController } from './AnalyticsController'; +import { AnalyticsModule } from './AnalyticsModule'; import { AnalyticsService } from './AnalyticsService'; describe('AnalyticsModule', () => { diff --git a/apps/api/src/domain/analytics/AnalyticsModule.ts b/apps/api/src/domain/analytics/AnalyticsModule.ts index fbda9f999..b405e4703 100644 --- a/apps/api/src/domain/analytics/AnalyticsModule.ts +++ b/apps/api/src/domain/analytics/AnalyticsModule.ts @@ -2,8 +2,8 @@ import { Module } from '@nestjs/common'; import { AnalyticsPersistenceModule } from '../../persistence/analytics/AnalyticsPersistenceModule'; import { AnalyticsController } from './AnalyticsController'; -import { AnalyticsService } from './AnalyticsService'; import { AnalyticsProviders } from './AnalyticsProviders'; +import { AnalyticsService } from './AnalyticsService'; @Module({ imports: [AnalyticsPersistenceModule], diff --git a/apps/api/src/domain/analytics/AnalyticsService.test.ts b/apps/api/src/domain/analytics/AnalyticsService.test.ts index cbed87e6c..60b7a144d 100644 --- a/apps/api/src/domain/analytics/AnalyticsService.test.ts +++ b/apps/api/src/domain/analytics/AnalyticsService.test.ts @@ -1,10 +1,10 @@ -import { describe, expect, it, vi } from 'vitest'; import { Result } from '@core/shared/domain/Result'; +import { describe, expect, it, vi } from 'vitest'; import { AnalyticsService } from './AnalyticsService'; -import { RecordPageViewPresenter } from './presenters/RecordPageViewPresenter'; -import { RecordEngagementPresenter } from './presenters/RecordEngagementPresenter'; -import { GetDashboardDataPresenter } from './presenters/GetDashboardDataPresenter'; import { GetAnalyticsMetricsPresenter } from './presenters/GetAnalyticsMetricsPresenter'; +import { GetDashboardDataPresenter } from './presenters/GetDashboardDataPresenter'; +import { RecordEngagementPresenter } from './presenters/RecordEngagementPresenter'; +import { RecordPageViewPresenter } from './presenters/RecordPageViewPresenter'; describe('AnalyticsService', () => { it('recordPageView returns presenter response on success', async () => { diff --git a/apps/api/src/domain/analytics/dtos/RecordEngagementInputDTO.ts b/apps/api/src/domain/analytics/dtos/RecordEngagementInputDTO.ts index 859248083..34ec4df79 100644 --- a/apps/api/src/domain/analytics/dtos/RecordEngagementInputDTO.ts +++ b/apps/api/src/domain/analytics/dtos/RecordEngagementInputDTO.ts @@ -1,6 +1,6 @@ -import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional, IsEnum, IsObject } from 'class-validator'; import { EngagementAction, EngagementEntityType } from '@core/analytics/domain/types/EngagementEvent'; +import { ApiProperty } from '@nestjs/swagger'; +import { IsEnum, IsObject, IsOptional, IsString } from 'class-validator'; export class RecordEngagementInputDTO { @ApiProperty({ enum: EngagementAction }) diff --git a/apps/api/src/domain/analytics/dtos/RecordEngagementOutputDTO.ts b/apps/api/src/domain/analytics/dtos/RecordEngagementOutputDTO.ts index e5f6596a4..a6866071c 100644 --- a/apps/api/src/domain/analytics/dtos/RecordEngagementOutputDTO.ts +++ b/apps/api/src/domain/analytics/dtos/RecordEngagementOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class RecordEngagementOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/analytics/dtos/RecordPageViewInputDTO.ts b/apps/api/src/domain/analytics/dtos/RecordPageViewInputDTO.ts index 0993749d7..9268326cd 100644 --- a/apps/api/src/domain/analytics/dtos/RecordPageViewInputDTO.ts +++ b/apps/api/src/domain/analytics/dtos/RecordPageViewInputDTO.ts @@ -1,6 +1,6 @@ -import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional, IsEnum } from 'class-validator'; import { EntityType, VisitorType } from '@core/analytics/domain/types/PageView'; +import { ApiProperty } from '@nestjs/swagger'; +import { IsEnum, IsOptional, IsString } from 'class-validator'; export class RecordPageViewInputDTO { @ApiProperty({ enum: EntityType }) diff --git a/apps/api/src/domain/analytics/presenters/GetAnalyticsMetricsPresenter.test.ts b/apps/api/src/domain/analytics/presenters/GetAnalyticsMetricsPresenter.test.ts index ab1c50b2c..8d6898fc4 100644 --- a/apps/api/src/domain/analytics/presenters/GetAnalyticsMetricsPresenter.test.ts +++ b/apps/api/src/domain/analytics/presenters/GetAnalyticsMetricsPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { GetAnalyticsMetricsPresenter } from './GetAnalyticsMetricsPresenter'; import type { GetAnalyticsMetricsOutput } from '@core/analytics/application/use-cases/GetAnalyticsMetricsUseCase'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetAnalyticsMetricsPresenter } from './GetAnalyticsMetricsPresenter'; describe('GetAnalyticsMetricsPresenter', () => { let presenter: GetAnalyticsMetricsPresenter; diff --git a/apps/api/src/domain/analytics/presenters/GetDashboardDataPresenter.test.ts b/apps/api/src/domain/analytics/presenters/GetDashboardDataPresenter.test.ts index 5d1e69c32..cdfe4c129 100644 --- a/apps/api/src/domain/analytics/presenters/GetDashboardDataPresenter.test.ts +++ b/apps/api/src/domain/analytics/presenters/GetDashboardDataPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { GetDashboardDataPresenter } from './GetDashboardDataPresenter'; import type { GetDashboardDataOutput } from '@core/analytics/application/use-cases/GetDashboardDataUseCase'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetDashboardDataPresenter } from './GetDashboardDataPresenter'; describe('GetDashboardDataPresenter', () => { let presenter: GetDashboardDataPresenter; diff --git a/apps/api/src/domain/analytics/presenters/RecordEngagementPresenter.test.ts b/apps/api/src/domain/analytics/presenters/RecordEngagementPresenter.test.ts index be2036ec4..8740cf6e8 100644 --- a/apps/api/src/domain/analytics/presenters/RecordEngagementPresenter.test.ts +++ b/apps/api/src/domain/analytics/presenters/RecordEngagementPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { RecordEngagementPresenter } from './RecordEngagementPresenter'; import type { RecordEngagementOutput } from '@core/analytics/application/use-cases/RecordEngagementUseCase'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { RecordEngagementPresenter } from './RecordEngagementPresenter'; describe('RecordEngagementPresenter', () => { let presenter: RecordEngagementPresenter; diff --git a/apps/api/src/domain/analytics/presenters/RecordPageViewPresenter.test.ts b/apps/api/src/domain/analytics/presenters/RecordPageViewPresenter.test.ts index dedaff0d7..0e19a1097 100644 --- a/apps/api/src/domain/analytics/presenters/RecordPageViewPresenter.test.ts +++ b/apps/api/src/domain/analytics/presenters/RecordPageViewPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { RecordPageViewPresenter } from './RecordPageViewPresenter'; import type { RecordPageViewOutput } from '@core/analytics/application/use-cases/RecordPageViewUseCase'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { RecordPageViewPresenter } from './RecordPageViewPresenter'; describe('RecordPageViewPresenter', () => { let presenter: RecordPageViewPresenter; diff --git a/apps/api/src/domain/auth/ActorFromSession.test.ts b/apps/api/src/domain/auth/ActorFromSession.test.ts index 7e35dbea0..4c3da9e63 100644 --- a/apps/api/src/domain/auth/ActorFromSession.test.ts +++ b/apps/api/src/domain/auth/ActorFromSession.test.ts @@ -1,8 +1,8 @@ -import { describe, expect, it, vi } from 'vitest'; import { requestContextMiddleware } from '@adapters/http/RequestContext'; import { Result } from '@core/shared/domain/Result'; -import { getActorFromRequestContext } from './getActorFromRequestContext'; +import { describe, expect, it, vi } from 'vitest'; import { requireLeagueAdminOrOwner } from '../league/LeagueAuthorization'; +import { getActorFromRequestContext } from './getActorFromRequestContext'; async function withRequestContext(req: Record, fn: () => Promise): Promise { const res = {}; diff --git a/apps/api/src/domain/auth/AuthController.test.ts b/apps/api/src/domain/auth/AuthController.test.ts index 29b0ea4a1..d4ee3133d 100644 --- a/apps/api/src/domain/auth/AuthController.test.ts +++ b/apps/api/src/domain/auth/AuthController.test.ts @@ -4,15 +4,15 @@ import { Reflector } from '@nestjs/core'; import { Test } from '@nestjs/testing'; import request from 'supertest'; import { Mock, vi } from 'vitest'; +import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; +import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; import { AuthController } from './AuthController'; -import { AuthService } from './AuthService'; -import { AuthSessionDTO, LoginParamsDTO, SignupParamsDTO, SignupSponsorParamsDTO } from './dtos/AuthDto'; -import type { CommandResultDTO } from './presenters/CommandResultPresenter'; import { AuthenticationGuard } from './AuthenticationGuard'; import { AuthorizationGuard } from './AuthorizationGuard'; import type { AuthorizationService } from './AuthorizationService'; -import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; -import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; +import { AuthService } from './AuthService'; +import { AuthSessionDTO, LoginParamsDTO, SignupParamsDTO, SignupSponsorParamsDTO } from './dtos/AuthDto'; +import type { CommandResultDTO } from './presenters/CommandResultPresenter'; describe('AuthController', () => { let controller: AuthController; diff --git a/apps/api/src/domain/auth/AuthController.ts b/apps/api/src/domain/auth/AuthController.ts index 49a28ade4..9b8980b08 100644 --- a/apps/api/src/domain/auth/AuthController.ts +++ b/apps/api/src/domain/auth/AuthController.ts @@ -1,9 +1,9 @@ -import { Controller, Get, Post, Body, Query, Inject, Res, BadRequestException, UnauthorizedException } from '@nestjs/common'; -import { Public } from './Public'; -import { AuthService } from './AuthService'; -import { LoginParamsDTO, SignupParamsDTO, SignupSponsorParamsDTO, AuthSessionDTO, ForgotPasswordDTO, ResetPasswordDTO } from './dtos/AuthDto'; -import type { CommandResultDTO } from './presenters/CommandResultPresenter'; +import { BadRequestException, Body, Controller, Get, Inject, Post, Query, Res, UnauthorizedException } from '@nestjs/common'; import type { Response } from 'express'; +import { AuthService } from './AuthService'; +import { AuthSessionDTO, ForgotPasswordDTO, LoginParamsDTO, ResetPasswordDTO, SignupParamsDTO, SignupSponsorParamsDTO } from './dtos/AuthDto'; +import type { CommandResultDTO } from './presenters/CommandResultPresenter'; +import { Public } from './Public'; @Public() @Controller('auth') diff --git a/apps/api/src/domain/auth/AuthGuards.http.test.ts b/apps/api/src/domain/auth/AuthGuards.http.test.ts index 8b723b502..9d26e4e64 100644 --- a/apps/api/src/domain/auth/AuthGuards.http.test.ts +++ b/apps/api/src/domain/auth/AuthGuards.http.test.ts @@ -5,14 +5,14 @@ import { Reflector } from '@nestjs/core'; import { Test } from '@nestjs/testing'; import request from 'supertest'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; +import { PolicyService, type PolicySnapshot } from '../policy/PolicyService'; +import { RequireCapability } from '../policy/RequireCapability'; import { AuthenticationGuard } from './AuthenticationGuard'; import { AuthorizationGuard } from './AuthorizationGuard'; import { AuthorizationService } from './AuthorizationService'; import { Public } from './Public'; import { RequireRoles } from './RequireRoles'; -import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; -import { PolicyService, type PolicySnapshot } from '../policy/PolicyService'; -import { RequireCapability } from '../policy/RequireCapability'; @Controller('authz-test') class AuthzTestController { diff --git a/apps/api/src/domain/auth/AuthModule.test.ts b/apps/api/src/domain/auth/AuthModule.test.ts index 014d5f98b..84ca5f399 100644 --- a/apps/api/src/domain/auth/AuthModule.test.ts +++ b/apps/api/src/domain/auth/AuthModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { AuthModule } from './AuthModule'; import { AuthController } from './AuthController'; +import { AuthModule } from './AuthModule'; import { AuthService } from './AuthService'; describe('AuthModule', () => { diff --git a/apps/api/src/domain/auth/AuthModule.ts b/apps/api/src/domain/auth/AuthModule.ts index e0c066d55..fc3636462 100644 --- a/apps/api/src/domain/auth/AuthModule.ts +++ b/apps/api/src/domain/auth/AuthModule.ts @@ -1,9 +1,9 @@ import { Module } from '@nestjs/common'; import { IdentityPersistenceModule } from '../../persistence/identity/IdentityPersistenceModule'; import { InMemoryAdminPersistenceModule } from '../../persistence/inmemory/InMemoryAdminPersistenceModule'; -import { AuthService } from './AuthService'; import { AuthController } from './AuthController'; import { AuthProviders } from './AuthProviders'; +import { AuthService } from './AuthService'; import { AuthenticationGuard } from './AuthenticationGuard'; import { AuthorizationGuard } from './AuthorizationGuard'; import { AuthorizationService } from './AuthorizationService'; diff --git a/apps/api/src/domain/auth/AuthService.test.ts b/apps/api/src/domain/auth/AuthService.test.ts index 2919edd52..ae101d301 100644 --- a/apps/api/src/domain/auth/AuthService.test.ts +++ b/apps/api/src/domain/auth/AuthService.test.ts @@ -1,5 +1,5 @@ -import { describe, expect, it, vi } from 'vitest'; import { Result } from '@core/shared/domain/Result'; +import { describe, expect, it, vi } from 'vitest'; import { AuthService } from './AuthService'; class FakeAuthSessionPresenter { diff --git a/apps/api/src/domain/auth/AuthenticationGuard.ts b/apps/api/src/domain/auth/AuthenticationGuard.ts index cd6e9b95a..e984e0f2e 100644 --- a/apps/api/src/domain/auth/AuthenticationGuard.ts +++ b/apps/api/src/domain/auth/AuthenticationGuard.ts @@ -1,5 +1,5 @@ -import { CanActivate, ExecutionContext, Inject, Injectable } from '@nestjs/common'; import type { IdentitySessionPort } from '@core/identity/application/ports/IdentitySessionPort'; +import { CanActivate, ExecutionContext, Inject, Injectable } from '@nestjs/common'; import { IDENTITY_SESSION_PORT_TOKEN } from './AuthProviders'; type AuthenticatedRequest = { diff --git a/apps/api/src/domain/auth/dtos/AuthDto.ts b/apps/api/src/domain/auth/dtos/AuthDto.ts index 885d6749a..ea81d68c8 100644 --- a/apps/api/src/domain/auth/dtos/AuthDto.ts +++ b/apps/api/src/domain/auth/dtos/AuthDto.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsEmail, IsString, MinLength, IsOptional } from 'class-validator'; +import { IsEmail, IsOptional, IsString, MinLength } from 'class-validator'; export class AuthenticatedUserDTO { @ApiProperty() diff --git a/apps/api/src/domain/auth/presenters/AuthSessionPresenter.test.ts b/apps/api/src/domain/auth/presenters/AuthSessionPresenter.test.ts index 46263a726..407f2824e 100644 --- a/apps/api/src/domain/auth/presenters/AuthSessionPresenter.test.ts +++ b/apps/api/src/domain/auth/presenters/AuthSessionPresenter.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { AuthSessionPresenter } from './AuthSessionPresenter'; import { User } from '@core/identity/domain/entities/User'; -import { UserId } from '@core/identity/domain/value-objects/UserId'; import { PasswordHash } from '@core/identity/domain/value-objects/PasswordHash'; +import { UserId } from '@core/identity/domain/value-objects/UserId'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { AuthSessionPresenter } from './AuthSessionPresenter'; describe('AuthSessionPresenter', () => { let presenter: AuthSessionPresenter; diff --git a/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts b/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts index b0a04a7c0..9471100b0 100644 --- a/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts +++ b/apps/api/src/domain/auth/presenters/AuthSessionPresenter.ts @@ -1,8 +1,8 @@ +import type { LoginResult } from '@core/identity/application/use-cases/LoginUseCase'; +import type { SignupSponsorResult } from '@core/identity/application/use-cases/SignupSponsorUseCase'; +import type { SignupResult } from '@core/identity/application/use-cases/SignupUseCase'; import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { AuthenticatedUserDTO } from '../dtos/AuthDto'; -import type { LoginResult } from '@core/identity/application/use-cases/LoginUseCase'; -import type { SignupResult } from '@core/identity/application/use-cases/SignupUseCase'; -import type { SignupSponsorResult } from '@core/identity/application/use-cases/SignupSponsorUseCase'; type AuthSessionResult = LoginResult | SignupResult | SignupSponsorResult; diff --git a/apps/api/src/domain/auth/presenters/CommandResultPresenter.test.ts b/apps/api/src/domain/auth/presenters/CommandResultPresenter.test.ts index 60695392c..710f6eaf9 100644 --- a/apps/api/src/domain/auth/presenters/CommandResultPresenter.test.ts +++ b/apps/api/src/domain/auth/presenters/CommandResultPresenter.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it } from 'vitest'; import { CommandResultPresenter } from './CommandResultPresenter'; describe('CommandResultPresenter', () => { diff --git a/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts b/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts index e87581516..b73dd16c8 100644 --- a/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts +++ b/apps/api/src/domain/auth/presenters/CommandResultPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { LogoutResult } from '@core/identity/application/use-cases/LogoutUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; export interface CommandResultDTO { success: boolean; diff --git a/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts b/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts index 618063678..4188d2ceb 100644 --- a/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts +++ b/apps/api/src/domain/auth/presenters/ForgotPasswordPresenter.ts @@ -1,6 +1,6 @@ -import { Injectable } from '@nestjs/common'; -import { UseCaseOutputPort } from '@core/shared/application'; import { ForgotPasswordResult } from '@core/identity/application/use-cases/ForgotPasswordUseCase'; +import { UseCaseOutputPort } from '@core/shared/application'; +import { Injectable } from '@nestjs/common'; @Injectable() export class ForgotPasswordPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts b/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts index 907e36d26..ab389cde5 100644 --- a/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts +++ b/apps/api/src/domain/auth/presenters/ResetPasswordPresenter.ts @@ -1,6 +1,6 @@ -import { Injectable } from '@nestjs/common'; -import { UseCaseOutputPort } from '@core/shared/application'; import { ResetPasswordResult } from '@core/identity/application/use-cases/ResetPasswordUseCase'; +import { UseCaseOutputPort } from '@core/shared/application'; +import { Injectable } from '@nestjs/common'; @Injectable() export class ResetPasswordPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/bootstrap/BootstrapSeed.http.test.ts b/apps/api/src/domain/bootstrap/BootstrapSeed.http.test.ts index 8ca418c4b..0f27f7652 100644 --- a/apps/api/src/domain/bootstrap/BootstrapSeed.http.test.ts +++ b/apps/api/src/domain/bootstrap/BootstrapSeed.http.test.ts @@ -1,7 +1,7 @@ import 'reflect-metadata'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import request from 'supertest'; import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest'; diff --git a/apps/api/src/domain/bootstrap/RacingSeed.test.ts b/apps/api/src/domain/bootstrap/RacingSeed.test.ts index 87a5c88e6..5e9b5b1c7 100644 --- a/apps/api/src/domain/bootstrap/RacingSeed.test.ts +++ b/apps/api/src/domain/bootstrap/RacingSeed.test.ts @@ -1,5 +1,5 @@ -import { describe, expect, it } from 'vitest'; import { createRacingSeed } from '@adapters/bootstrap/racing/RacingSeed'; +import { describe, expect, it } from 'vitest'; describe('Racing seed (bootstrap)', () => { it('creates a large, internally consistent seed', () => { diff --git a/apps/api/src/domain/dashboard/DashboardController.test.ts b/apps/api/src/domain/dashboard/DashboardController.test.ts index aa4d381f5..1c7872bae 100644 --- a/apps/api/src/domain/dashboard/DashboardController.test.ts +++ b/apps/api/src/domain/dashboard/DashboardController.test.ts @@ -4,14 +4,14 @@ import { Reflector } from '@nestjs/core'; import { Test } from '@nestjs/testing'; import request from 'supertest'; import { vi } from 'vitest'; -import { DashboardController } from './DashboardController'; -import { DashboardOverviewDTO } from './dtos/DashboardOverviewDTO'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; +import { DashboardController } from './DashboardController'; import { DashboardService } from './DashboardService'; +import { DashboardOverviewDTO } from './dtos/DashboardOverviewDTO'; describe('DashboardController', () => { let controller: DashboardController; diff --git a/apps/api/src/domain/dashboard/DashboardController.ts b/apps/api/src/domain/dashboard/DashboardController.ts index 2bc346ef5..30b764103 100644 --- a/apps/api/src/domain/dashboard/DashboardController.ts +++ b/apps/api/src/domain/dashboard/DashboardController.ts @@ -1,5 +1,5 @@ -import { Controller, Get, Query, Req, UnauthorizedException, Inject } from '@nestjs/common'; -import { ApiTags, ApiResponse, ApiOperation, ApiQuery } from '@nestjs/swagger'; +import { Controller, Get, Inject, Query, Req, UnauthorizedException } from '@nestjs/common'; +import { ApiOperation, ApiQuery, ApiResponse, ApiTags } from '@nestjs/swagger'; import { DashboardService } from './DashboardService'; import { DashboardOverviewDTO } from './dtos/DashboardOverviewDTO'; diff --git a/apps/api/src/domain/dashboard/DashboardModule.test.ts b/apps/api/src/domain/dashboard/DashboardModule.test.ts index ffd767500..0c9adaf4d 100644 --- a/apps/api/src/domain/dashboard/DashboardModule.test.ts +++ b/apps/api/src/domain/dashboard/DashboardModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { DashboardModule } from './DashboardModule'; import { DashboardController } from './DashboardController'; +import { DashboardModule } from './DashboardModule'; import { DashboardService } from './DashboardService'; import { DashboardOverviewPresenter } from './presenters/DashboardOverviewPresenter'; diff --git a/apps/api/src/domain/dashboard/DashboardModule.ts b/apps/api/src/domain/dashboard/DashboardModule.ts index 608eb897b..c60ac2dbc 100644 --- a/apps/api/src/domain/dashboard/DashboardModule.ts +++ b/apps/api/src/domain/dashboard/DashboardModule.ts @@ -1,9 +1,9 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; import { SocialPersistenceModule } from '../../persistence/social/SocialPersistenceModule'; -import { DashboardService } from './DashboardService'; import { DashboardController } from './DashboardController'; import { DashboardProviders } from './DashboardProviders'; +import { DashboardService } from './DashboardService'; @Module({ imports: [RacingPersistenceModule, SocialPersistenceModule], diff --git a/apps/api/src/domain/dashboard/DashboardProviders.ts b/apps/api/src/domain/dashboard/DashboardProviders.ts index 44050aa30..56e95bf52 100644 --- a/apps/api/src/domain/dashboard/DashboardProviders.ts +++ b/apps/api/src/domain/dashboard/DashboardProviders.ts @@ -1,50 +1,50 @@ import { Provider } from '@nestjs/common'; // Import core interfaces -import type { Logger } from '@core/shared/application/Logger'; import { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; +import { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; +import { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; import { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; import { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; -import { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; import { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; -import { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; -import { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; +import type { Logger } from '@core/shared/application/Logger'; import { IFeedRepository } from '@core/social/domain/repositories/FeedRepository'; import { ISocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; -import { SOCIAL_FEED_REPOSITORY_TOKEN, SOCIAL_GRAPH_REPOSITORY_TOKEN } from '../../persistence/social/SocialPersistenceTokens'; import { ImageServicePort } from '@core/media/application/ports/ImageServicePort'; import { DashboardOverviewUseCase } from '@core/racing/application/use-cases/DashboardOverviewUseCase'; +import { SOCIAL_FEED_REPOSITORY_TOKEN, SOCIAL_GRAPH_REPOSITORY_TOKEN } from '../../persistence/social/SocialPersistenceTokens'; // Import concrete implementations import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; import { InMemoryImageServiceAdapter } from '@adapters/media/ports/InMemoryImageServiceAdapter'; -import { DashboardOverviewPresenter } from './presenters/DashboardOverviewPresenter'; import { - DASHBOARD_OVERVIEW_USE_CASE_TOKEN, - DRIVER_REPOSITORY_TOKEN, - IMAGE_SERVICE_TOKEN, - LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - LEAGUE_REPOSITORY_TOKEN, - LOGGER_TOKEN, - RACE_REGISTRATION_REPOSITORY_TOKEN, - RACE_REPOSITORY_TOKEN, - RESULT_REPOSITORY_TOKEN, - STANDING_REPOSITORY_TOKEN, + DASHBOARD_OVERVIEW_USE_CASE_TOKEN, + DRIVER_REPOSITORY_TOKEN, + IMAGE_SERVICE_TOKEN, + LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, + LEAGUE_REPOSITORY_TOKEN, + LOGGER_TOKEN, + RACE_REGISTRATION_REPOSITORY_TOKEN, + RACE_REPOSITORY_TOKEN, + RESULT_REPOSITORY_TOKEN, + STANDING_REPOSITORY_TOKEN, } from './DashboardTokens'; +import { DashboardOverviewPresenter } from './presenters/DashboardOverviewPresenter'; // Re-export tokens for convenience (legacy imports) export { - DASHBOARD_OVERVIEW_USE_CASE_TOKEN, - DRIVER_REPOSITORY_TOKEN, - IMAGE_SERVICE_TOKEN, - LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - LEAGUE_REPOSITORY_TOKEN, - LOGGER_TOKEN, - RACE_REGISTRATION_REPOSITORY_TOKEN, - RACE_REPOSITORY_TOKEN, - RESULT_REPOSITORY_TOKEN, - STANDING_REPOSITORY_TOKEN, + DASHBOARD_OVERVIEW_USE_CASE_TOKEN, + DRIVER_REPOSITORY_TOKEN, + IMAGE_SERVICE_TOKEN, + LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, + LEAGUE_REPOSITORY_TOKEN, + LOGGER_TOKEN, + RACE_REGISTRATION_REPOSITORY_TOKEN, + RACE_REPOSITORY_TOKEN, + RESULT_REPOSITORY_TOKEN, + STANDING_REPOSITORY_TOKEN } from './DashboardTokens'; export const DashboardProviders: Provider[] = [ diff --git a/apps/api/src/domain/dashboard/DashboardService.test.ts b/apps/api/src/domain/dashboard/DashboardService.test.ts index 5775920ec..31f71d520 100644 --- a/apps/api/src/domain/dashboard/DashboardService.test.ts +++ b/apps/api/src/domain/dashboard/DashboardService.test.ts @@ -1,5 +1,5 @@ -import { describe, expect, it, vi } from 'vitest'; import { Result } from '@core/shared/domain/Result'; +import { describe, expect, it, vi } from 'vitest'; import { DashboardService } from './DashboardService'; describe('DashboardService', () => { diff --git a/apps/api/src/domain/dashboard/DashboardService.ts b/apps/api/src/domain/dashboard/DashboardService.ts index a2d165a9a..f9b480af1 100644 --- a/apps/api/src/domain/dashboard/DashboardService.ts +++ b/apps/api/src/domain/dashboard/DashboardService.ts @@ -8,8 +8,8 @@ import type { Logger } from '@core/shared/application/Logger'; // Tokens (standalone to avoid circular imports) import { - DASHBOARD_OVERVIEW_USE_CASE_TOKEN, - LOGGER_TOKEN, + DASHBOARD_OVERVIEW_USE_CASE_TOKEN, + LOGGER_TOKEN, } from './DashboardTokens'; @Injectable() diff --git a/apps/api/src/domain/dashboard/dtos/DashboardDriverSummaryDTO.ts b/apps/api/src/domain/dashboard/dtos/DashboardDriverSummaryDTO.ts index cf4ca2238..e8e874382 100644 --- a/apps/api/src/domain/dashboard/dtos/DashboardDriverSummaryDTO.ts +++ b/apps/api/src/domain/dashboard/dtos/DashboardDriverSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsOptional } from 'class-validator'; +import { IsNumber, IsOptional, IsString } from 'class-validator'; export class DashboardDriverSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/dashboard/dtos/DashboardFeedItemSummaryDTO.ts b/apps/api/src/domain/dashboard/dtos/DashboardFeedItemSummaryDTO.ts index 2df53f238..68288d66d 100644 --- a/apps/api/src/domain/dashboard/dtos/DashboardFeedItemSummaryDTO.ts +++ b/apps/api/src/domain/dashboard/dtos/DashboardFeedItemSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional } from 'class-validator'; +import { IsOptional, IsString } from 'class-validator'; export type DashboardFeedItemType = | 'friend-joined-league' diff --git a/apps/api/src/domain/dashboard/dtos/DashboardLeagueStandingSummaryDTO.ts b/apps/api/src/domain/dashboard/dtos/DashboardLeagueStandingSummaryDTO.ts index 99966f01c..8738b1a04 100644 --- a/apps/api/src/domain/dashboard/dtos/DashboardLeagueStandingSummaryDTO.ts +++ b/apps/api/src/domain/dashboard/dtos/DashboardLeagueStandingSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class DashboardLeagueStandingSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/dashboard/dtos/DashboardOverviewDTO.ts b/apps/api/src/domain/dashboard/dtos/DashboardOverviewDTO.ts index 95cba6fe0..b8bcdd711 100644 --- a/apps/api/src/domain/dashboard/dtos/DashboardOverviewDTO.ts +++ b/apps/api/src/domain/dashboard/dtos/DashboardOverviewDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsOptional, IsBoolean, IsArray, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsArray, IsBoolean, IsNumber, IsOptional, IsString, ValidateNested } from 'class-validator'; export class DashboardDriverSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/dashboard/dtos/DashboardRaceSummaryDTO.ts b/apps/api/src/domain/dashboard/dtos/DashboardRaceSummaryDTO.ts index 4c870af7c..ed4ff146d 100644 --- a/apps/api/src/domain/dashboard/dtos/DashboardRaceSummaryDTO.ts +++ b/apps/api/src/domain/dashboard/dtos/DashboardRaceSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class DashboardRaceSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/dashboard/dtos/DashboardRecentResultDTO.ts b/apps/api/src/domain/dashboard/dtos/DashboardRecentResultDTO.ts index 5cec87cd8..e92a4adaa 100644 --- a/apps/api/src/domain/dashboard/dtos/DashboardRecentResultDTO.ts +++ b/apps/api/src/domain/dashboard/dtos/DashboardRecentResultDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class DashboardRecentResultDTO { @ApiProperty() diff --git a/apps/api/src/domain/dashboard/presenters/DashboardOverviewPresenter.ts b/apps/api/src/domain/dashboard/presenters/DashboardOverviewPresenter.ts index ba0b6dc7e..3a0a27b48 100644 --- a/apps/api/src/domain/dashboard/presenters/DashboardOverviewPresenter.ts +++ b/apps/api/src/domain/dashboard/presenters/DashboardOverviewPresenter.ts @@ -1,15 +1,15 @@ import type { - DashboardOverviewResult, + DashboardOverviewResult, } from '@core/racing/application/use-cases/DashboardOverviewUseCase'; import { - DashboardOverviewDTO, - DashboardDriverSummaryDTO, - DashboardRaceSummaryDTO, - DashboardRecentResultDTO, - DashboardLeagueStandingSummaryDTO, - DashboardFeedSummaryDTO, - DashboardFeedItemSummaryDTO, - DashboardFriendSummaryDTO, + DashboardDriverSummaryDTO, + DashboardFeedItemSummaryDTO, + DashboardFeedSummaryDTO, + DashboardFriendSummaryDTO, + DashboardLeagueStandingSummaryDTO, + DashboardOverviewDTO, + DashboardRaceSummaryDTO, + DashboardRecentResultDTO, } from '../dtos/DashboardOverviewDTO'; export class DashboardOverviewPresenter { diff --git a/apps/api/src/domain/driver/DriverController.test.ts b/apps/api/src/domain/driver/DriverController.test.ts index a518b6a90..c5a3f0db0 100644 --- a/apps/api/src/domain/driver/DriverController.test.ts +++ b/apps/api/src/domain/driver/DriverController.test.ts @@ -2,28 +2,28 @@ import 'reflect-metadata'; import { Reflector } from '@nestjs/core'; import { Test, TestingModule } from '@nestjs/testing'; +import type { Request } from 'express'; import request from 'supertest'; import { vi } from 'vitest'; -import { DriverController } from './DriverController'; -import { DriverService } from './DriverService'; -import type { Request } from 'express'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; - -interface AuthenticatedRequest extends Request { - user?: { userId: string }; -} +import { DriverController } from './DriverController'; +import { DriverService } from './DriverService'; import { CompleteOnboardingInputDTO } from './dtos/CompleteOnboardingInputDTO'; import { CompleteOnboardingOutputDTO } from './dtos/CompleteOnboardingOutputDTO'; +import { DriverRegistrationStatusDTO } from './dtos/DriverRegistrationStatusDTO'; import { DriversLeaderboardDTO } from './dtos/DriversLeaderboardDTO'; import { DriverStatsDTO } from './dtos/DriverStatsDTO'; import { GetDriverLiveriesOutputDTO } from './dtos/GetDriverLiveriesOutputDTO'; import { GetDriverOutputDTO } from './dtos/GetDriverOutputDTO'; import { GetDriverProfileOutputDTO } from './dtos/GetDriverProfileOutputDTO'; -import { DriverRegistrationStatusDTO } from './dtos/DriverRegistrationStatusDTO'; + +interface AuthenticatedRequest extends Request { + user?: { userId: string }; +} describe('DriverController', () => { let controller: DriverController; diff --git a/apps/api/src/domain/driver/DriverController.ts b/apps/api/src/domain/driver/DriverController.ts index 3ec168de8..70ecca3bf 100644 --- a/apps/api/src/domain/driver/DriverController.ts +++ b/apps/api/src/domain/driver/DriverController.ts @@ -1,13 +1,9 @@ -import { Body, Controller, Get, Param, Post, Put, Req, Inject, NotFoundException } from '@nestjs/common'; +import { Body, Controller, Get, Inject, NotFoundException, Param, Post, Put, Req } from '@nestjs/common'; import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import { Public } from '../auth/Public'; import { DriverService } from './DriverService'; import { CompleteOnboardingInputDTO } from './dtos/CompleteOnboardingInputDTO'; - -type AuthenticatedRequest = { - user?: { userId: string }; -}; import { CompleteOnboardingOutputDTO } from './dtos/CompleteOnboardingOutputDTO'; import { DriverRegistrationStatusDTO } from './dtos/DriverRegistrationStatusDTO'; import { DriversLeaderboardDTO } from './dtos/DriversLeaderboardDTO'; @@ -16,6 +12,10 @@ import { GetDriverLiveriesOutputDTO } from './dtos/GetDriverLiveriesOutputDTO'; import { GetDriverOutputDTO } from './dtos/GetDriverOutputDTO'; import { GetDriverProfileOutputDTO } from './dtos/GetDriverProfileOutputDTO'; +type AuthenticatedRequest = { + user?: { userId: string }; +}; + @ApiTags('drivers') @Controller('drivers') diff --git a/apps/api/src/domain/driver/DriverModule.test.ts b/apps/api/src/domain/driver/DriverModule.test.ts index 2fff147fb..5233464dd 100644 --- a/apps/api/src/domain/driver/DriverModule.test.ts +++ b/apps/api/src/domain/driver/DriverModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { DriverModule } from './DriverModule'; import { DriverController } from './DriverController'; +import { DriverModule } from './DriverModule'; import { DriverService } from './DriverService'; describe('DriverModule', () => { diff --git a/apps/api/src/domain/driver/DriverModule.ts b/apps/api/src/domain/driver/DriverModule.ts index e85d9eb16..14d1dc35a 100644 --- a/apps/api/src/domain/driver/DriverModule.ts +++ b/apps/api/src/domain/driver/DriverModule.ts @@ -1,9 +1,9 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; import { SocialPersistenceModule } from '../../persistence/social/SocialPersistenceModule'; -import { DriverService } from './DriverService'; import { DriverController } from './DriverController'; import { DriverProviders } from './DriverProviders'; +import { DriverService } from './DriverService'; @Module({ imports: [RacingPersistenceModule, SocialPersistenceModule], diff --git a/apps/api/src/domain/driver/DriverService.test.ts b/apps/api/src/domain/driver/DriverService.test.ts index 43d87e23d..202664a63 100644 --- a/apps/api/src/domain/driver/DriverService.test.ts +++ b/apps/api/src/domain/driver/DriverService.test.ts @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ -import { describe, expect, it, vi, beforeEach } from 'vitest'; import { Result } from '@core/shared/domain/Result'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { DriverService } from './DriverService'; describe('DriverService', () => { diff --git a/apps/api/src/domain/driver/dtos/CompleteOnboardingInputDTO.ts b/apps/api/src/domain/driver/dtos/CompleteOnboardingInputDTO.ts index 10cd5c0d6..39022a10b 100644 --- a/apps/api/src/domain/driver/dtos/CompleteOnboardingInputDTO.ts +++ b/apps/api/src/domain/driver/dtos/CompleteOnboardingInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsOptional } from 'class-validator'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; export class CompleteOnboardingInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/driver/dtos/GetDriverProfileOutputDTO.ts b/apps/api/src/domain/driver/dtos/GetDriverProfileOutputDTO.ts index bfcc39f3f..8bfcf770f 100644 --- a/apps/api/src/domain/driver/dtos/GetDriverProfileOutputDTO.ts +++ b/apps/api/src/domain/driver/dtos/GetDriverProfileOutputDTO.ts @@ -1,11 +1,11 @@ import { ApiProperty } from '@nestjs/swagger'; import { DriverProfileDriverSummaryDTO } from './DriverProfileDriverSummaryDTO'; -import { DriverProfileStatsDTO } from './DriverProfileStatsDTO'; -import { DriverProfileFinishDistributionDTO } from './DriverProfileFinishDistributionDTO'; -import { DriverProfileTeamMembershipDTO } from './DriverProfileTeamMembershipDTO'; -import { DriverProfileSocialSummaryDTO } from './DriverProfileSocialSummaryDTO'; import { DriverProfileExtendedProfileDTO } from './DriverProfileExtendedProfileDTO'; +import { DriverProfileFinishDistributionDTO } from './DriverProfileFinishDistributionDTO'; +import { DriverProfileSocialSummaryDTO } from './DriverProfileSocialSummaryDTO'; +import { DriverProfileStatsDTO } from './DriverProfileStatsDTO'; +import { DriverProfileTeamMembershipDTO } from './DriverProfileTeamMembershipDTO'; export class GetDriverProfileOutputDTO { @ApiProperty({ type: DriverProfileDriverSummaryDTO, nullable: true }) diff --git a/apps/api/src/domain/driver/presenters/CompleteOnboardingPresenter.ts b/apps/api/src/domain/driver/presenters/CompleteOnboardingPresenter.ts index 127b2ebe0..36866c338 100644 --- a/apps/api/src/domain/driver/presenters/CompleteOnboardingPresenter.ts +++ b/apps/api/src/domain/driver/presenters/CompleteOnboardingPresenter.ts @@ -1,5 +1,5 @@ -import type { CompleteOnboardingOutputDTO } from '../dtos/CompleteOnboardingOutputDTO'; import type { CompleteDriverOnboardingResult } from '@core/racing/application/use-cases/CompleteDriverOnboardingUseCase'; +import type { CompleteOnboardingOutputDTO } from '../dtos/CompleteOnboardingOutputDTO'; export class CompleteOnboardingPresenter { private responseModel: CompleteOnboardingOutputDTO | null = null; diff --git a/apps/api/src/domain/driver/presenters/DriverPresenter.ts b/apps/api/src/domain/driver/presenters/DriverPresenter.ts index 0379e85e3..12ef6ef97 100644 --- a/apps/api/src/domain/driver/presenters/DriverPresenter.ts +++ b/apps/api/src/domain/driver/presenters/DriverPresenter.ts @@ -1,9 +1,9 @@ -import { Result } from '@core/shared/domain/Result'; -import type { Driver } from '@core/racing/domain/entities/Driver'; -import type { GetDriverOutputDTO } from '../dtos/GetDriverOutputDTO'; -import type { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; -import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import { MediaReference } from '@core/domain/media/MediaReference'; +import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; +import type { Driver } from '@core/racing/domain/entities/Driver'; +import type { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; +import { Result } from '@core/shared/domain/Result'; +import type { GetDriverOutputDTO } from '../dtos/GetDriverOutputDTO'; export class DriverPresenter { private responseModel: GetDriverOutputDTO | null = null; diff --git a/apps/api/src/domain/driver/presenters/DriverProfilePresenter.ts b/apps/api/src/domain/driver/presenters/DriverProfilePresenter.ts index 01e1f2dc6..867fe2618 100644 --- a/apps/api/src/domain/driver/presenters/DriverProfilePresenter.ts +++ b/apps/api/src/domain/driver/presenters/DriverProfilePresenter.ts @@ -1,10 +1,10 @@ -import type { - GetProfileOverviewResult, -} from '@core/racing/application/use-cases/GetProfileOverviewUseCase'; -import type { GetDriverProfileOutputDTO } from '../dtos/GetDriverProfileOutputDTO'; -import type { DriverProfileExtendedProfileDTO } from '../dtos/DriverProfileExtendedProfileDTO'; -import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import { MediaReference } from '@core/domain/media/MediaReference'; +import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; +import type { + GetProfileOverviewResult, +} from '@core/racing/application/use-cases/GetProfileOverviewUseCase'; +import type { DriverProfileExtendedProfileDTO } from '../dtos/DriverProfileExtendedProfileDTO'; +import type { GetDriverProfileOutputDTO } from '../dtos/GetDriverProfileOutputDTO'; export class DriverProfilePresenter { private responseModel: GetDriverProfileOutputDTO | null = null; diff --git a/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.test.ts b/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.test.ts index 2b6a94725..dfbabbb06 100644 --- a/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.test.ts +++ b/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it } from 'vitest'; import { DriverRegistrationStatusPresenter } from './DriverRegistrationStatusPresenter'; describe('DriverRegistrationStatusPresenter', () => { diff --git a/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.ts b/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.ts index d43c91104..59c293ea9 100644 --- a/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.ts +++ b/apps/api/src/domain/driver/presenters/DriverRegistrationStatusPresenter.ts @@ -1,5 +1,5 @@ import type { - IsDriverRegisteredForRaceResult, + IsDriverRegisteredForRaceResult, } from '@core/racing/application/use-cases/IsDriverRegisteredForRaceUseCase'; import { DriverRegistrationStatusDTO } from '../dtos/DriverRegistrationStatusDTO'; diff --git a/apps/api/src/domain/driver/presenters/DriverStatsPresenter.test.ts b/apps/api/src/domain/driver/presenters/DriverStatsPresenter.test.ts index 37520970a..64fdb74e4 100644 --- a/apps/api/src/domain/driver/presenters/DriverStatsPresenter.test.ts +++ b/apps/api/src/domain/driver/presenters/DriverStatsPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { DriverStatsPresenter } from './DriverStatsPresenter'; import type { GetTotalDriversResult } from '@core/racing/application/use-cases/GetTotalDriversUseCase'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { DriverStatsPresenter } from './DriverStatsPresenter'; describe('DriverStatsPresenter', () => { let presenter: DriverStatsPresenter; diff --git a/apps/api/src/domain/driver/presenters/DriverStatsPresenter.ts b/apps/api/src/domain/driver/presenters/DriverStatsPresenter.ts index 8f8706dac..5b7096c46 100644 --- a/apps/api/src/domain/driver/presenters/DriverStatsPresenter.ts +++ b/apps/api/src/domain/driver/presenters/DriverStatsPresenter.ts @@ -1,7 +1,7 @@ -import { DriverStatsDTO } from '../dtos/DriverStatsDTO'; import type { - GetTotalDriversResult, + GetTotalDriversResult, } from '@core/racing/application/use-cases/GetTotalDriversUseCase'; +import { DriverStatsDTO } from '../dtos/DriverStatsDTO'; export class DriverStatsPresenter { private responseModel: DriverStatsDTO | null = null; diff --git a/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.test.ts b/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.test.ts index 428cf3a9d..4885af697 100644 --- a/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.test.ts +++ b/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.test.ts @@ -1,10 +1,10 @@ -import { GetDriversLeaderboardResult } from '@core/racing/application/use-cases/GetDriversLeaderboardUseCase'; -import { beforeEach, describe, expect, it, vi } from 'vitest'; -import { DriversLeaderboardPresenter } from './DriversLeaderboardPresenter'; -import type { Driver } from '@core/racing/domain/entities/Driver'; -import type { SkillLevel } from '@core/racing/domain/services/SkillLevelService'; import { MediaReference } from '@core/domain/media/MediaReference'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; +import { GetDriversLeaderboardResult } from '@core/racing/application/use-cases/GetDriversLeaderboardUseCase'; +import type { Driver } from '@core/racing/domain/entities/Driver'; +import type { SkillLevel } from '@core/racing/domain/services/SkillLevelService'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; +import { DriversLeaderboardPresenter } from './DriversLeaderboardPresenter'; describe('DriversLeaderboardPresenter', () => { let presenter: DriversLeaderboardPresenter; diff --git a/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.ts b/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.ts index 20b57dd78..478a57e72 100644 --- a/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.ts +++ b/apps/api/src/domain/driver/presenters/DriversLeaderboardPresenter.ts @@ -1,9 +1,9 @@ -import { DriversLeaderboardDTO } from '../dtos/DriversLeaderboardDTO'; -import type { - GetDriversLeaderboardResult, -} from '@core/racing/application/use-cases/GetDriversLeaderboardUseCase'; -import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import { MediaReference } from '@core/domain/media/MediaReference'; +import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; +import type { + GetDriversLeaderboardResult, +} from '@core/racing/application/use-cases/GetDriversLeaderboardUseCase'; +import { DriversLeaderboardDTO } from '../dtos/DriversLeaderboardDTO'; export class DriversLeaderboardPresenter { private responseModel: DriversLeaderboardDTO | null = null; diff --git a/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.test.ts b/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.test.ts index 3eb6259cd..7e7fa2d4e 100644 --- a/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.test.ts +++ b/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { Result } from '@core/shared/domain/Result'; -import { GetDriverLiveriesPresenter } from './GetDriverLiveriesPresenter'; import { DriverLivery } from '@core/racing/domain/entities/DriverLivery'; +import { Result } from '@core/shared/domain/Result'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetDriverLiveriesPresenter } from './GetDriverLiveriesPresenter'; describe('GetDriverLiveriesPresenter', () => { let presenter: GetDriverLiveriesPresenter; diff --git a/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.ts b/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.ts index dd99d4ab6..87ed0c12a 100644 --- a/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.ts +++ b/apps/api/src/domain/driver/presenters/GetDriverLiveriesPresenter.ts @@ -1,5 +1,5 @@ -import { Result } from '@core/shared/domain/Result'; import type { DriverLivery } from '@core/racing/domain/entities/DriverLivery'; +import { Result } from '@core/shared/domain/Result'; import type { GetDriverLiveriesOutputDTO } from '../dtos/GetDriverLiveriesOutputDTO'; export class GetDriverLiveriesPresenter { diff --git a/apps/api/src/domain/hello/HelloController.test.ts b/apps/api/src/domain/hello/HelloController.test.ts index 6422a0e4f..9aa265b16 100644 --- a/apps/api/src/domain/hello/HelloController.test.ts +++ b/apps/api/src/domain/hello/HelloController.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, vi } from 'vitest'; +import { describe, expect, it, vi } from 'vitest'; import { HelloController } from './HelloController'; describe('HelloController', () => { diff --git a/apps/api/src/domain/league/LeagueAuthorization.ts b/apps/api/src/domain/league/LeagueAuthorization.ts index 33d95b2d9..cb1155ed1 100644 --- a/apps/api/src/domain/league/LeagueAuthorization.ts +++ b/apps/api/src/domain/league/LeagueAuthorization.ts @@ -1,6 +1,6 @@ +import type { GetLeagueAdminPermissionsUseCase } from '@core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase'; import { ForbiddenException } from '@nestjs/common'; import { getActorFromRequestContext } from '../auth/getActorFromRequestContext'; -import type { GetLeagueAdminPermissionsUseCase } from '@core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase'; type GetLeagueAdminPermissionsUseCaseLike = Pick; diff --git a/apps/api/src/domain/league/LeagueController.test.ts b/apps/api/src/domain/league/LeagueController.test.ts index b865b43d1..f2cfa06c8 100644 --- a/apps/api/src/domain/league/LeagueController.test.ts +++ b/apps/api/src/domain/league/LeagueController.test.ts @@ -4,13 +4,13 @@ import { Reflector } from '@nestjs/core'; import { Test, TestingModule } from '@nestjs/testing'; import request from 'supertest'; import { vi } from 'vitest'; -import { LeagueController } from './LeagueController'; -import { LeagueService } from './LeagueService'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; +import { LeagueController } from './LeagueController'; +import { LeagueService } from './LeagueService'; describe('LeagueController', () => { let controller: LeagueController; diff --git a/apps/api/src/domain/league/LeagueController.ts b/apps/api/src/domain/league/LeagueController.ts index a0a7afe8d..f809a65a1 100644 --- a/apps/api/src/domain/league/LeagueController.ts +++ b/apps/api/src/domain/league/LeagueController.ts @@ -1,14 +1,20 @@ -import { Body, Controller, Delete, Get, HttpCode, Param, Patch, Post, Inject, ValidationPipe, Query, NotFoundException, UnauthorizedException, BadRequestException } from '@nestjs/common'; +import { BadRequestException, Body, Controller, Delete, Get, HttpCode, Inject, NotFoundException, Param, Patch, Post, Query, UnauthorizedException, ValidationPipe } from '@nestjs/common'; import { ApiBody, ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import { Public } from '../auth/Public'; import { LeagueService } from './LeagueService'; -import { AllLeaguesWithCapacityDTO } from './dtos/AllLeaguesWithCapacityDTO'; import { AllLeaguesWithCapacityAndScoringDTO } from './dtos/AllLeaguesWithCapacityAndScoringDTO'; +import { AllLeaguesWithCapacityDTO } from './dtos/AllLeaguesWithCapacityDTO'; import { ApproveJoinRequestInputDTO } from './dtos/ApproveJoinRequestInputDTO'; import { ApproveJoinRequestOutputDTO } from './dtos/ApproveJoinRequestOutputDTO'; import { CreateLeagueInputDTO } from './dtos/CreateLeagueInputDTO'; import { CreateLeagueOutputDTO } from './dtos/CreateLeagueOutputDTO'; +import { GetLeagueAdminConfigQueryDTO } from './dtos/GetLeagueAdminConfigQueryDTO'; +import { GetLeagueOwnerSummaryQueryDTO } from './dtos/GetLeagueOwnerSummaryQueryDTO'; +import { GetLeagueProtestsQueryDTO } from './dtos/GetLeagueProtestsQueryDTO'; import { GetLeagueRacesOutputDTO } from './dtos/GetLeagueRacesOutputDTO'; +import { GetLeagueScheduleQueryDTO } from './dtos/GetLeagueScheduleQueryDTO'; +import { GetLeagueSeasonsQueryDTO } from './dtos/GetLeagueSeasonsQueryDTO'; +import { GetLeagueWalletOutputDTO } from './dtos/GetLeagueWalletOutputDTO'; import { GetSeasonSponsorshipsOutputDTO } from './dtos/GetSeasonSponsorshipsOutputDTO'; import { LeagueAdminDTO } from './dtos/LeagueAdminDTO'; import { LeagueAdminPermissionsDTO } from './dtos/LeagueAdminPermissionsDTO'; @@ -16,39 +22,33 @@ import { LeagueAdminProtestsDTO } from './dtos/LeagueAdminProtestsDTO'; import { LeagueConfigFormModelDTO } from './dtos/LeagueConfigFormModelDTO'; import { LeagueJoinRequestDTO } from './dtos/LeagueJoinRequestDTO'; import { LeagueMembershipsDTO } from './dtos/LeagueMembershipsDTO'; +import { LeagueOwnerSummaryDTO } from './dtos/LeagueOwnerSummaryDTO'; import { LeagueRosterJoinRequestDTO } from './dtos/LeagueRosterJoinRequestDTO'; import { LeagueRosterMemberDTO } from './dtos/LeagueRosterMemberDTO'; -import { LeagueOwnerSummaryDTO } from './dtos/LeagueOwnerSummaryDTO'; import { LeagueScheduleDTO } from './dtos/LeagueScheduleDTO'; import { - LeagueSeasonSchedulePublishInputDTO, - LeagueSeasonSchedulePublishOutputDTO, -} from './dtos/LeagueSeasonSchedulePublishDTO'; -import { - CreateLeagueScheduleRaceInputDTO, - CreateLeagueScheduleRaceOutputDTO, - LeagueScheduleRaceMutationSuccessDTO, - UpdateLeagueScheduleRaceInputDTO, + CreateLeagueScheduleRaceInputDTO, + CreateLeagueScheduleRaceOutputDTO, + LeagueScheduleRaceMutationSuccessDTO, + UpdateLeagueScheduleRaceInputDTO, } from './dtos/LeagueScheduleRaceAdminDTO'; +import { LeagueScoringPresetsDTO } from './dtos/LeagueScoringPresetsDTO'; +import { + LeagueSeasonSchedulePublishInputDTO, + LeagueSeasonSchedulePublishOutputDTO, +} from './dtos/LeagueSeasonSchedulePublishDTO'; import { LeagueSeasonSummaryDTO } from './dtos/LeagueSeasonSummaryDTO'; import { LeagueStandingsDTO } from './dtos/LeagueStandingsDTO'; import { LeagueStatsDTO } from './dtos/LeagueStatsDTO'; import { RejectJoinRequestInputDTO } from './dtos/RejectJoinRequestInputDTO'; import { RejectJoinRequestOutputDTO } from './dtos/RejectJoinRequestOutputDTO'; import { RemoveLeagueMemberOutputDTO } from './dtos/RemoveLeagueMemberOutputDTO'; +import { TotalLeaguesDTO } from './dtos/TotalLeaguesDTO'; +import { TransferLeagueOwnershipInputDTO } from './dtos/TransferLeagueOwnershipInputDTO'; import { UpdateLeagueMemberRoleInputDTO } from './dtos/UpdateLeagueMemberRoleInputDTO'; import { UpdateLeagueMemberRoleOutputDTO } from './dtos/UpdateLeagueMemberRoleOutputDTO'; -import { GetLeagueOwnerSummaryQueryDTO } from './dtos/GetLeagueOwnerSummaryQueryDTO'; -import { GetLeagueAdminConfigQueryDTO } from './dtos/GetLeagueAdminConfigQueryDTO'; -import { GetLeagueProtestsQueryDTO } from './dtos/GetLeagueProtestsQueryDTO'; -import { GetLeagueSeasonsQueryDTO } from './dtos/GetLeagueSeasonsQueryDTO'; -import { GetLeagueWalletOutputDTO } from './dtos/GetLeagueWalletOutputDTO'; -import { TotalLeaguesDTO } from './dtos/TotalLeaguesDTO'; -import { GetLeagueScheduleQueryDTO } from './dtos/GetLeagueScheduleQueryDTO'; import { WithdrawFromLeagueWalletInputDTO } from './dtos/WithdrawFromLeagueWalletInputDTO'; import { WithdrawFromLeagueWalletOutputDTO } from './dtos/WithdrawFromLeagueWalletOutputDTO'; -import { LeagueScoringPresetsDTO } from './dtos/LeagueScoringPresetsDTO'; -import { TransferLeagueOwnershipInputDTO } from './dtos/TransferLeagueOwnershipInputDTO'; @ApiTags('leagues') @Controller('leagues') diff --git a/apps/api/src/domain/league/LeagueModule.ts b/apps/api/src/domain/league/LeagueModule.ts index f8e858a83..9b1c7d714 100644 --- a/apps/api/src/domain/league/LeagueModule.ts +++ b/apps/api/src/domain/league/LeagueModule.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; -import { LeagueService } from './LeagueService'; import { LeagueController } from './LeagueController'; import { LeagueProviders } from './LeagueProviders'; +import { LeagueService } from './LeagueService'; @Module({ imports: [RacingPersistenceModule], diff --git a/apps/api/src/domain/league/LeagueProviders.ts b/apps/api/src/domain/league/LeagueProviders.ts index b5c8f0224..86ebd0b48 100644 --- a/apps/api/src/domain/league/LeagueProviders.ts +++ b/apps/api/src/domain/league/LeagueProviders.ts @@ -4,6 +4,7 @@ import { LeagueService } from './LeagueService'; import * as LeagueTokens from './LeagueTokens'; // Import core interfaces +import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import type { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; import type { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; import type { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; @@ -13,29 +14,28 @@ import type { ISeasonRepository } from '@core/racing/domain/repositories/SeasonR import type { ISeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; import type { Logger } from '@core/shared/application/Logger'; -import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; // Import concrete in-memory implementations -import type { ILeagueWalletRepository } from "@core/racing/domain/repositories/LeagueWalletRepository"; -import type { ITransactionRepository } from "@core/racing/domain/repositories/TransactionRepository"; import { getLeagueScoringPresetById, listLeagueScoringPresets } from '@adapters/bootstrap/LeagueScoringPresets'; import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; -import { InMemoryLeagueStandingsRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueStandingsRepository'; import { MediaResolverAdapter } from '@adapters/media/MediaResolverAdapter'; +import { InMemoryLeagueStandingsRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueStandingsRepository'; +import type { ILeagueWalletRepository } from "@core/racing/domain/repositories/LeagueWalletRepository"; +import type { ITransactionRepository } from "@core/racing/domain/repositories/TransactionRepository"; // Import use cases import { ApproveLeagueJoinRequestUseCase } from '@core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase'; import { CreateLeagueWithSeasonAndScoringUseCase } from '@core/racing/application/use-cases/CreateLeagueWithSeasonAndScoringUseCase'; -import { GetAllLeaguesWithCapacityUseCase } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase'; import { GetAllLeaguesWithCapacityAndScoringUseCase } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase'; +import { GetAllLeaguesWithCapacityUseCase } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase'; import { GetLeagueAdminPermissionsUseCase } from '@core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase'; import { GetLeagueFullConfigUseCase } from '@core/racing/application/use-cases/GetLeagueFullConfigUseCase'; import { GetLeagueJoinRequestsUseCase } from '@core/racing/application/use-cases/GetLeagueJoinRequestsUseCase'; import { GetLeagueMembershipsUseCase } from '@core/racing/application/use-cases/GetLeagueMembershipsUseCase'; -import { GetLeagueRosterMembersUseCase } from '@core/racing/application/use-cases/GetLeagueRosterMembersUseCase'; -import { GetLeagueRosterJoinRequestsUseCase } from '@core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase'; import { GetLeagueOwnerSummaryUseCase } from '@core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase'; import { GetLeagueProtestsUseCase } from '@core/racing/application/use-cases/GetLeagueProtestsUseCase'; +import { GetLeagueRosterJoinRequestsUseCase } from '@core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase'; +import { GetLeagueRosterMembersUseCase } from '@core/racing/application/use-cases/GetLeagueRosterMembersUseCase'; import { GetLeagueScheduleUseCase } from '@core/racing/application/use-cases/GetLeagueScheduleUseCase'; import { GetLeagueScoringConfigUseCase } from '@core/racing/application/use-cases/GetLeagueScoringConfigUseCase'; import { GetLeagueSeasonsUseCase } from '@core/racing/application/use-cases/GetLeagueSeasonsUseCase'; @@ -55,22 +55,18 @@ import { WithdrawFromLeagueWalletUseCase } from '@core/racing/application/use-ca // Schedule mutation use cases import { CreateLeagueSeasonScheduleRaceUseCase } from '@core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase'; -import { UpdateLeagueSeasonScheduleRaceUseCase } from '@core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase'; import { DeleteLeagueSeasonScheduleRaceUseCase } from '@core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase'; import { PublishLeagueSeasonScheduleUseCase } from '@core/racing/application/use-cases/PublishLeagueSeasonScheduleUseCase'; import { UnpublishLeagueSeasonScheduleUseCase } from '@core/racing/application/use-cases/UnpublishLeagueSeasonScheduleUseCase'; +import { UpdateLeagueSeasonScheduleRaceUseCase } from '@core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase'; // Import presenters -import { AllLeaguesWithCapacityPresenter } from './presenters/AllLeaguesWithCapacityPresenter'; import { AllLeaguesWithCapacityAndScoringPresenter } from './presenters/AllLeaguesWithCapacityAndScoringPresenter'; +import { AllLeaguesWithCapacityPresenter } from './presenters/AllLeaguesWithCapacityPresenter'; import { ApproveLeagueJoinRequestPresenter } from './presenters/ApproveLeagueJoinRequestPresenter'; import { CreateLeaguePresenter } from './presenters/CreateLeaguePresenter'; import { GetLeagueAdminPermissionsPresenter } from './presenters/GetLeagueAdminPermissionsPresenter'; import { GetLeagueMembershipsPresenter } from './presenters/GetLeagueMembershipsPresenter'; -import { - GetLeagueRosterJoinRequestsPresenter, - GetLeagueRosterMembersPresenter, -} from './presenters/LeagueRosterAdminReadPresenters'; import { GetLeagueOwnerSummaryPresenter } from './presenters/GetLeagueOwnerSummaryPresenter'; import { GetLeagueProtestsPresenter } from './presenters/GetLeagueProtestsPresenter'; import { GetLeagueSeasonsPresenter } from './presenters/GetLeagueSeasonsPresenter'; @@ -79,7 +75,11 @@ import { GetSeasonSponsorshipsPresenter } from './presenters/GetSeasonSponsorshi import { JoinLeaguePresenter } from './presenters/JoinLeaguePresenter'; import { LeagueConfigPresenter } from './presenters/LeagueConfigPresenter'; import { LeagueJoinRequestsPresenter } from './presenters/LeagueJoinRequestsPresenter'; -import { LeagueSchedulePresenter, LeagueRacesPresenter } from './presenters/LeagueSchedulePresenter'; +import { + GetLeagueRosterJoinRequestsPresenter, + GetLeagueRosterMembersPresenter, +} from './presenters/LeagueRosterAdminReadPresenters'; +import { LeagueRacesPresenter, LeagueSchedulePresenter } from './presenters/LeagueSchedulePresenter'; import { LeagueScoringConfigPresenter } from './presenters/LeagueScoringConfigPresenter'; import { LeagueScoringPresetsPresenter } from './presenters/LeagueScoringPresetsPresenter'; import { LeagueStandingsPresenter } from './presenters/LeagueStandingsPresenter'; @@ -92,11 +92,11 @@ import { UpdateLeagueMemberRolePresenter } from './presenters/UpdateLeagueMember import { WithdrawFromLeagueWalletPresenter } from './presenters/WithdrawFromLeagueWalletPresenter'; import { - CreateLeagueSeasonScheduleRacePresenter, - DeleteLeagueSeasonScheduleRacePresenter, - PublishLeagueSeasonSchedulePresenter, - UnpublishLeagueSeasonSchedulePresenter, - UpdateLeagueSeasonScheduleRacePresenter, + CreateLeagueSeasonScheduleRacePresenter, + DeleteLeagueSeasonScheduleRacePresenter, + PublishLeagueSeasonSchedulePresenter, + UnpublishLeagueSeasonSchedulePresenter, + UpdateLeagueSeasonScheduleRacePresenter, } from './presenters/LeagueSeasonScheduleMutationPresenters'; export const LEAGUE_REPOSITORY_TOKEN = 'ILeagueRepository'; diff --git a/apps/api/src/domain/league/LeagueRosterJoinRequests.mutations.http.test.ts b/apps/api/src/domain/league/LeagueRosterJoinRequests.mutations.http.test.ts index d602ad933..ae487fee2 100644 --- a/apps/api/src/domain/league/LeagueRosterJoinRequests.mutations.http.test.ts +++ b/apps/api/src/domain/league/LeagueRosterJoinRequests.mutations.http.test.ts @@ -1,27 +1,27 @@ import 'reflect-metadata'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; -import { Test } from '@nestjs/testing'; -import { Reflector } from '@nestjs/core'; -import request from 'supertest'; import { ValidationPipe } from '@nestjs/common'; +import { Reflector } from '@nestjs/core'; +import { Test } from '@nestjs/testing'; +import request from 'supertest'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; -import { LeagueModule } from './LeagueModule'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; +import { LeagueModule } from './LeagueModule'; import { requestContextMiddleware } from '@adapters/http/RequestContext'; import { - DRIVER_REPOSITORY_TOKEN, - LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - LEAGUE_REPOSITORY_TOKEN, + DRIVER_REPOSITORY_TOKEN, + LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, + LEAGUE_REPOSITORY_TOKEN, } from '../../persistence/inmemory/InMemoryRacingPersistenceModule'; -import { League } from '@core/racing/domain/entities/League'; import { Driver } from '@core/racing/domain/entities/Driver'; import { JoinRequest } from '@core/racing/domain/entities/JoinRequest'; +import { League } from '@core/racing/domain/entities/League'; import { LeagueMembership } from '@core/racing/domain/entities/LeagueMembership'; describe('League roster join request mutations (HTTP)', () => { diff --git a/apps/api/src/domain/league/LeagueRosterMembers.mutations.http.test.ts b/apps/api/src/domain/league/LeagueRosterMembers.mutations.http.test.ts index bdf17c816..badae6cf3 100644 --- a/apps/api/src/domain/league/LeagueRosterMembers.mutations.http.test.ts +++ b/apps/api/src/domain/league/LeagueRosterMembers.mutations.http.test.ts @@ -1,26 +1,26 @@ import 'reflect-metadata'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; -import { Test } from '@nestjs/testing'; -import { Reflector } from '@nestjs/core'; -import request from 'supertest'; import { ValidationPipe } from '@nestjs/common'; +import { Reflector } from '@nestjs/core'; +import { Test } from '@nestjs/testing'; +import request from 'supertest'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; -import { LeagueModule } from './LeagueModule'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; +import { LeagueModule } from './LeagueModule'; import { requestContextMiddleware } from '@adapters/http/RequestContext'; import { - DRIVER_REPOSITORY_TOKEN, - LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - LEAGUE_REPOSITORY_TOKEN, + DRIVER_REPOSITORY_TOKEN, + LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, + LEAGUE_REPOSITORY_TOKEN, } from '../../persistence/inmemory/InMemoryRacingPersistenceModule'; -import { League } from '@core/racing/domain/entities/League'; import { Driver } from '@core/racing/domain/entities/Driver'; +import { League } from '@core/racing/domain/entities/League'; import { LeagueMembership } from '@core/racing/domain/entities/LeagueMembership'; describe('League roster member mutations (HTTP)', () => { diff --git a/apps/api/src/domain/league/LeagueService.test.ts b/apps/api/src/domain/league/LeagueService.test.ts index ee890ae85..708286671 100644 --- a/apps/api/src/domain/league/LeagueService.test.ts +++ b/apps/api/src/domain/league/LeagueService.test.ts @@ -1,6 +1,6 @@ -import { describe, expect, it, vi } from 'vitest'; -import { Result } from '@core/shared/domain/Result'; import { requestContextMiddleware } from '@adapters/http/RequestContext'; +import { Result } from '@core/shared/domain/Result'; +import { describe, expect, it, vi } from 'vitest'; import { LeagueService } from './LeagueService'; async function withUserId(userId: string, fn: () => Promise): Promise { diff --git a/apps/api/src/domain/league/dtos/ApproveJoinRequestOutputDTO.ts b/apps/api/src/domain/league/dtos/ApproveJoinRequestOutputDTO.ts index 8cfd63559..c35a2c773 100644 --- a/apps/api/src/domain/league/dtos/ApproveJoinRequestOutputDTO.ts +++ b/apps/api/src/domain/league/dtos/ApproveJoinRequestOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class ApproveJoinRequestOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/CreateLeagueInputDTO.ts b/apps/api/src/domain/league/dtos/CreateLeagueInputDTO.ts index cecc26549..85aa9cf8f 100644 --- a/apps/api/src/domain/league/dtos/CreateLeagueInputDTO.ts +++ b/apps/api/src/domain/league/dtos/CreateLeagueInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum } from 'class-validator'; +import { IsEnum, IsString } from 'class-validator'; export class CreateLeagueInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/CreateLeagueOutputDTO.ts b/apps/api/src/domain/league/dtos/CreateLeagueOutputDTO.ts index 08f44db53..792f57078 100644 --- a/apps/api/src/domain/league/dtos/CreateLeagueOutputDTO.ts +++ b/apps/api/src/domain/league/dtos/CreateLeagueOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class CreateLeagueOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/GetLeagueAdminConfigOutputDTO.ts b/apps/api/src/domain/league/dtos/GetLeagueAdminConfigOutputDTO.ts index a032adbb9..b54586c0d 100644 --- a/apps/api/src/domain/league/dtos/GetLeagueAdminConfigOutputDTO.ts +++ b/apps/api/src/domain/league/dtos/GetLeagueAdminConfigOutputDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsOptional, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsOptional, ValidateNested } from 'class-validator'; import { LeagueConfigFormModelDTO } from './LeagueConfigFormModelDTO'; export class GetLeagueAdminConfigOutputDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueAdminConfigDTO.ts b/apps/api/src/domain/league/dtos/LeagueAdminConfigDTO.ts index eb07284ed..f454fa0e6 100644 --- a/apps/api/src/domain/league/dtos/LeagueAdminConfigDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueAdminConfigDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsOptional, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsOptional, ValidateNested } from 'class-validator'; import { LeagueConfigFormModelDTO } from './LeagueConfigFormModelDTO'; export class LeagueAdminConfigDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueAdminDTO.ts b/apps/api/src/domain/league/dtos/LeagueAdminDTO.ts index 795f629cb..262e9653c 100644 --- a/apps/api/src/domain/league/dtos/LeagueAdminDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueAdminDTO.ts @@ -1,10 +1,10 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsOptional, IsArray, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; -import { LeagueJoinRequestDTO } from './LeagueJoinRequestDTO'; -import { LeagueOwnerSummaryDTO } from './LeagueOwnerSummaryDTO'; +import { IsArray, IsOptional, ValidateNested } from 'class-validator'; import { LeagueAdminConfigDTO } from './LeagueAdminConfigDTO'; import { LeagueAdminProtestsDTO } from './LeagueAdminProtestsDTO'; +import { LeagueJoinRequestDTO } from './LeagueJoinRequestDTO'; +import { LeagueOwnerSummaryDTO } from './LeagueOwnerSummaryDTO'; import { LeagueSeasonSummaryDTO } from './LeagueSeasonSummaryDTO'; export class LeagueAdminDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueAdminProtestsDTO.ts b/apps/api/src/domain/league/dtos/LeagueAdminProtestsDTO.ts index e965c322b..d96d5fbc5 100644 --- a/apps/api/src/domain/league/dtos/LeagueAdminProtestsDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueAdminProtestsDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsArray, ValidateNested, IsObject } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsArray, IsObject, ValidateNested } from 'class-validator'; import { DriverDTO } from '../../driver/dtos/DriverDTO'; import { RaceDTO } from '../../race/dtos/RaceDTO'; import { ProtestDTO } from './ProtestDTO'; diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelBasicsDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelBasicsDTO.ts index 147623900..120b7dd0d 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelBasicsDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelBasicsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum } from 'class-validator'; +import { IsEnum, IsString } from 'class-validator'; export class LeagueConfigFormModelBasicsDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelDTO.ts index 3c5d3d344..542779993 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelDTO.ts @@ -1,11 +1,11 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsArray, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsArray, IsString, ValidateNested } from 'class-validator'; import { LeagueConfigFormModelBasicsDTO } from './LeagueConfigFormModelBasicsDTO'; -import { LeagueConfigFormModelStructureDTO } from './LeagueConfigFormModelStructureDTO'; -import { LeagueConfigFormModelScoringDTO } from './LeagueConfigFormModelScoringDTO'; import { LeagueConfigFormModelDropPolicyDTO } from './LeagueConfigFormModelDropPolicyDTO'; +import { LeagueConfigFormModelScoringDTO } from './LeagueConfigFormModelScoringDTO'; import { LeagueConfigFormModelStewardingDTO } from './LeagueConfigFormModelStewardingDTO'; +import { LeagueConfigFormModelStructureDTO } from './LeagueConfigFormModelStructureDTO'; import { LeagueConfigFormModelTimingsDTO } from './LeagueConfigFormModelTimingsDTO'; export class LeagueConfigFormModelDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelDropPolicyDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelDropPolicyDTO.ts index 8b95c80bf..324423e2f 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelDropPolicyDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelDropPolicyDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsNumber, IsOptional, IsEnum } from 'class-validator'; +import { IsEnum, IsNumber, IsOptional } from 'class-validator'; export class LeagueConfigFormModelDropPolicyDTO { @ApiProperty({ enum: ['none', 'worst_n'] }) diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelScoringDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelScoringDTO.ts index ebbaafd09..9224f9b2d 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelScoringDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelScoringDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class LeagueConfigFormModelScoringDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelStewardingDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelStewardingDTO.ts index c7db5251d..b6e46a3d5 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelStewardingDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelStewardingDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsNumber, IsBoolean, IsOptional, IsEnum } from 'class-validator'; +import { IsBoolean, IsEnum, IsNumber, IsOptional } from 'class-validator'; export class LeagueConfigFormModelStewardingDTO { @ApiProperty({ enum: ['single_steward', 'committee_vote'] }) diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelStructureDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelStructureDTO.ts index da82ce0a2..8c261e96c 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelStructureDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelStructureDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum } from 'class-validator'; +import { IsEnum, IsString } from 'class-validator'; export class LeagueConfigFormModelStructureDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueConfigFormModelTimingsDTO.ts b/apps/api/src/domain/league/dtos/LeagueConfigFormModelTimingsDTO.ts index 240f6f5db..9cdaf0a7a 100644 --- a/apps/api/src/domain/league/dtos/LeagueConfigFormModelTimingsDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueConfigFormModelTimingsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class LeagueConfigFormModelTimingsDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueJoinRequestDTO.ts b/apps/api/src/domain/league/dtos/LeagueJoinRequestDTO.ts index 1ca6dd00e..49ef97762 100644 --- a/apps/api/src/domain/league/dtos/LeagueJoinRequestDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueJoinRequestDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsDate, IsOptional } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsDate, IsOptional, IsString } from 'class-validator'; export interface DriverInfo { id: string; diff --git a/apps/api/src/domain/league/dtos/LeagueMemberDTO.ts b/apps/api/src/domain/league/dtos/LeagueMemberDTO.ts index ff7836a8d..e81b0edf9 100644 --- a/apps/api/src/domain/league/dtos/LeagueMemberDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueMemberDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsEnum, IsString, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsEnum, IsString, ValidateNested } from 'class-validator'; import { DriverDTO } from '../../driver/dtos/DriverDTO'; export class LeagueMemberDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueMembershipDTO.ts b/apps/api/src/domain/league/dtos/LeagueMembershipDTO.ts index c146e15cf..71588594c 100644 --- a/apps/api/src/domain/league/dtos/LeagueMembershipDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueMembershipDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum } from 'class-validator'; +import { IsEnum, IsString } from 'class-validator'; export class LeagueMembershipDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueMembershipsDTO.ts b/apps/api/src/domain/league/dtos/LeagueMembershipsDTO.ts index caacadff7..edf04924c 100644 --- a/apps/api/src/domain/league/dtos/LeagueMembershipsDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueMembershipsDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsArray, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsArray, ValidateNested } from 'class-validator'; import { LeagueMemberDTO } from './LeagueMemberDTO'; export class LeagueMembershipsDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueOwnerSummaryDTO.ts b/apps/api/src/domain/league/dtos/LeagueOwnerSummaryDTO.ts index bc64e5f9c..9611b662c 100644 --- a/apps/api/src/domain/league/dtos/LeagueOwnerSummaryDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueOwnerSummaryDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsNumber, IsOptional, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsNumber, IsOptional, ValidateNested } from 'class-validator'; import { DriverDTO } from '../../driver/dtos/DriverDTO'; export class LeagueOwnerSummaryDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueScheduleDTO.ts b/apps/api/src/domain/league/dtos/LeagueScheduleDTO.ts index 67ffc37a1..d2182e601 100644 --- a/apps/api/src/domain/league/dtos/LeagueScheduleDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueScheduleDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsArray, IsBoolean, IsString, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsArray, IsBoolean, IsString, ValidateNested } from 'class-validator'; import { RaceDTO } from '../../race/dtos/RaceDTO'; export class LeagueScheduleDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueScoringPresetDTO.ts b/apps/api/src/domain/league/dtos/LeagueScoringPresetDTO.ts index fc8890b6c..d2d4665ab 100644 --- a/apps/api/src/domain/league/dtos/LeagueScoringPresetDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueScoringPresetDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsEnum, IsNumber, IsString, ValidateNested } from 'class-validator'; export class LeagueScoringPresetTimingDefaultsDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueSeasonSummaryDTO.ts b/apps/api/src/domain/league/dtos/LeagueSeasonSummaryDTO.ts index fccc6a8ee..71018f12b 100644 --- a/apps/api/src/domain/league/dtos/LeagueSeasonSummaryDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueSeasonSummaryDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean, IsDate, IsOptional } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsBoolean, IsDate, IsOptional, IsString } from 'class-validator'; export class LeagueSeasonSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueStandingDTO.ts b/apps/api/src/domain/league/dtos/LeagueStandingDTO.ts index d2119f7df..29c8d8348 100644 --- a/apps/api/src/domain/league/dtos/LeagueStandingDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueStandingDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsNumber, IsString, ValidateNested } from 'class-validator'; import { DriverDTO } from '../../driver/dtos/DriverDTO'; export class LeagueStandingDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueStandingsDTO.ts b/apps/api/src/domain/league/dtos/LeagueStandingsDTO.ts index 22aaf826c..4a8540d9d 100644 --- a/apps/api/src/domain/league/dtos/LeagueStandingsDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueStandingsDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsArray, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsArray, ValidateNested } from 'class-validator'; import { LeagueStandingDTO } from './LeagueStandingDTO'; export class LeagueStandingsDTO { diff --git a/apps/api/src/domain/league/dtos/LeagueSummaryDTO.ts b/apps/api/src/domain/league/dtos/LeagueSummaryDTO.ts index eee4073eb..c2d182215 100644 --- a/apps/api/src/domain/league/dtos/LeagueSummaryDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsBoolean, IsOptional } from 'class-validator'; +import { IsBoolean, IsNumber, IsOptional, IsString } from 'class-validator'; export class LeagueSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/LeagueWithCapacityDTO.ts b/apps/api/src/domain/league/dtos/LeagueWithCapacityDTO.ts index ff56c4d7d..6ec5e60b2 100644 --- a/apps/api/src/domain/league/dtos/LeagueWithCapacityDTO.ts +++ b/apps/api/src/domain/league/dtos/LeagueWithCapacityDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsOptional, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsNumber, IsOptional, IsString, ValidateNested } from 'class-validator'; import { LeagueSettingsDTO } from './LeagueSettingsDTO'; export class LeagueWithCapacityDTO { diff --git a/apps/api/src/domain/league/dtos/ProtestDTO.ts b/apps/api/src/domain/league/dtos/ProtestDTO.ts index 5e4c81084..4cceb0100 100644 --- a/apps/api/src/domain/league/dtos/ProtestDTO.ts +++ b/apps/api/src/domain/league/dtos/ProtestDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsDate, IsEnum } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsDate, IsEnum, IsString } from 'class-validator'; /** * ProtestDTO represents a protest that is filed against a specific race diff --git a/apps/api/src/domain/league/dtos/RejectJoinRequestOutputDTO.ts b/apps/api/src/domain/league/dtos/RejectJoinRequestOutputDTO.ts index fa758d91b..6f8ea58d4 100644 --- a/apps/api/src/domain/league/dtos/RejectJoinRequestOutputDTO.ts +++ b/apps/api/src/domain/league/dtos/RejectJoinRequestOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class RejectJoinRequestOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/SeasonDTO.ts b/apps/api/src/domain/league/dtos/SeasonDTO.ts index cee25bbc8..4e7acc8ae 100644 --- a/apps/api/src/domain/league/dtos/SeasonDTO.ts +++ b/apps/api/src/domain/league/dtos/SeasonDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean, IsDate, IsOptional, IsEnum } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsBoolean, IsDate, IsEnum, IsOptional, IsString } from 'class-validator'; export class SeasonDTO { @ApiProperty() diff --git a/apps/api/src/domain/league/dtos/WizardErrorsDTO.ts b/apps/api/src/domain/league/dtos/WizardErrorsDTO.ts index 6d0b869bd..d2d1d5f79 100644 --- a/apps/api/src/domain/league/dtos/WizardErrorsDTO.ts +++ b/apps/api/src/domain/league/dtos/WizardErrorsDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsOptional, IsString, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsOptional, IsString, ValidateNested } from 'class-validator'; export class WizardErrorsBasicsDTO { @ApiProperty({ required: false }) diff --git a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.test.ts b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.test.ts index efbd4ef82..d78e9ea01 100644 --- a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.test.ts @@ -1,12 +1,12 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { AllLeaguesWithCapacityAndScoringPresenter } from './AllLeaguesWithCapacityAndScoringPresenter'; -import { League } from '@core/racing/domain/entities/League'; -import { Season } from '@core/racing/domain/entities/season/Season'; -import { LeagueScoringConfig } from '@core/racing/domain/entities/LeagueScoringConfig'; -import { Game } from '@core/racing/domain/entities/Game'; import { MediaReference } from '@core/domain/media/MediaReference'; +import { Game } from '@core/racing/domain/entities/Game'; +import { League } from '@core/racing/domain/entities/League'; +import { LeagueScoringConfig } from '@core/racing/domain/entities/LeagueScoringConfig'; +import { Season } from '@core/racing/domain/entities/season/Season'; import type { LeagueScoringPreset } from '@core/racing/domain/types/LeagueScoringPreset'; import { PointsTable } from '@core/racing/domain/value-objects/PointsTable'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { AllLeaguesWithCapacityAndScoringPresenter } from './AllLeaguesWithCapacityAndScoringPresenter'; describe('AllLeaguesWithCapacityAndScoringPresenter', () => { let presenter: AllLeaguesWithCapacityAndScoringPresenter; diff --git a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts index 6652c2536..5d347eb77 100644 --- a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts +++ b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityAndScoringPresenter.ts @@ -1,11 +1,11 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; -import type { GetAllLeaguesWithCapacityAndScoringResult } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase'; -import type { - AllLeaguesWithCapacityAndScoringDTO, - LeagueWithCapacityAndScoringDTO, -} from '../dtos/AllLeaguesWithCapacityAndScoringDTO'; -import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import { MediaReference } from '@core/domain/media/MediaReference'; +import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; +import type { GetAllLeaguesWithCapacityAndScoringResult } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityAndScoringUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import type { + AllLeaguesWithCapacityAndScoringDTO, + LeagueWithCapacityAndScoringDTO, +} from '../dtos/AllLeaguesWithCapacityAndScoringDTO'; export class AllLeaguesWithCapacityAndScoringPresenter implements UseCaseOutputPort diff --git a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.test.ts b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.test.ts index 8debafa26..819c6f1be 100644 --- a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { AllLeaguesWithCapacityPresenter } from './AllLeaguesWithCapacityPresenter'; import { League } from '@core/racing/domain/entities/League'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { AllLeaguesWithCapacityPresenter } from './AllLeaguesWithCapacityPresenter'; describe('AllLeaguesWithCapacityPresenter', () => { let presenter: AllLeaguesWithCapacityPresenter; diff --git a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts index d62b317b8..27ff2ea16 100644 --- a/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts +++ b/apps/api/src/domain/league/presenters/AllLeaguesWithCapacityPresenter.ts @@ -1,6 +1,6 @@ +import type { GetAllLeaguesWithCapacityResult } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase'; import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { AllLeaguesWithCapacityDTO, LeagueWithCapacityDTO } from '../dtos/AllLeaguesWithCapacityDTO'; -import type { GetAllLeaguesWithCapacityResult } from '@core/racing/application/use-cases/GetAllLeaguesWithCapacityUseCase'; export class AllLeaguesWithCapacityPresenter implements UseCaseOutputPort { private result: AllLeaguesWithCapacityDTO | null = null; diff --git a/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.test.ts b/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.test.ts index b85524605..affbc084a 100644 --- a/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it } from 'vitest'; import { ApproveLeagueJoinRequestPresenter } from './ApproveLeagueJoinRequestPresenter'; describe('ApproveLeagueJoinRequestPresenter', () => { diff --git a/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts b/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts index acf31a6c3..1d50b8318 100644 --- a/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts +++ b/apps/api/src/domain/league/presenters/ApproveLeagueJoinRequestPresenter.ts @@ -1,6 +1,6 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import { ApproveLeagueJoinRequestResult } from '@core/racing/application/use-cases/ApproveLeagueJoinRequestUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import type { ApproveLeagueJoinRequestDTO } from '../dtos/ApproveLeagueJoinRequestDTO'; export class ApproveLeagueJoinRequestPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/CreateLeaguePresenter.test.ts b/apps/api/src/domain/league/presenters/CreateLeaguePresenter.test.ts index e8f9a1c7f..4469e3751 100644 --- a/apps/api/src/domain/league/presenters/CreateLeaguePresenter.test.ts +++ b/apps/api/src/domain/league/presenters/CreateLeaguePresenter.test.ts @@ -1,9 +1,9 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { CreateLeaguePresenter } from './CreateLeaguePresenter'; import { League } from '@core/racing/domain/entities/League'; -import { Season } from '@core/racing/domain/entities/season/Season'; import { LeagueScoringConfig } from '@core/racing/domain/entities/LeagueScoringConfig'; +import { Season } from '@core/racing/domain/entities/season/Season'; import { PointsTable } from '@core/racing/domain/value-objects/PointsTable'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { CreateLeaguePresenter } from './CreateLeaguePresenter'; describe('CreateLeaguePresenter', () => { let presenter: CreateLeaguePresenter; diff --git a/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts index 071d44b9e..59bdc7019 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueAdminPermissionsPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { GetLeagueAdminPermissionsResult } from '@core/racing/application/use-cases/GetLeagueAdminPermissionsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { LeagueAdminPermissionsDTO } from '../dtos/LeagueAdminPermissionsDTO'; export class GetLeagueAdminPermissionsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.test.ts b/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.test.ts index 7f102b755..8769ba5dc 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.test.ts @@ -1,5 +1,5 @@ -import { GetLeagueMembershipsPresenter } from './GetLeagueMembershipsPresenter'; import type { GetLeagueMembershipsResult } from '@core/racing/application/use-cases/GetLeagueMembershipsUseCase'; +import { GetLeagueMembershipsPresenter } from './GetLeagueMembershipsPresenter'; describe('GetLeagueMembershipsPresenter', () => { it('presents memberships correctly', () => { diff --git a/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts index a87844d19..28026389e 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueMembershipsPresenter.ts @@ -1,7 +1,7 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import { GetLeagueMembershipsResult } from '@core/racing/application/use-cases/GetLeagueMembershipsUseCase'; -import { LeagueMembershipsDTO } from '../dtos/LeagueMembershipsDTO'; +import type { UseCaseOutputPort } from '@core/shared/application'; import type { LeagueMemberDTO } from '../dtos/LeagueMemberDTO'; +import { LeagueMembershipsDTO } from '../dtos/LeagueMembershipsDTO'; export interface GetLeagueMembershipsViewModel { memberships: LeagueMembershipsDTO; diff --git a/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts index 69d3e7155..3f1418d75 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueOwnerSummaryPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { GetLeagueOwnerSummaryResult } from '@core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { LeagueOwnerSummaryDTO } from '../dtos/LeagueOwnerSummaryDTO'; export class GetLeagueOwnerSummaryPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetLeagueProtestsPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueProtestsPresenter.ts index 2743ab41e..059582749 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueProtestsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueProtestsPresenter.ts @@ -1,9 +1,9 @@ -import type { Presenter } from '../../../shared/presentation/Presenter'; import type { GetLeagueProtestsResult } from '@core/racing/application/use-cases/GetLeagueProtestsUseCase'; +import type { Presenter } from '../../../shared/presentation/Presenter'; +import { DriverDTO } from '../../driver/dtos/DriverDTO'; +import { RaceDTO } from '../../race/dtos/RaceDTO'; import { LeagueAdminProtestsDTO } from '../dtos/LeagueAdminProtestsDTO'; import { ProtestDTO } from '../dtos/ProtestDTO'; -import { RaceDTO } from '../../race/dtos/RaceDTO'; -import { DriverDTO } from '../../driver/dtos/DriverDTO'; function mapProtestStatus(status: string): ProtestDTO['status'] { switch (status) { diff --git a/apps/api/src/domain/league/presenters/GetLeagueSeasonsPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueSeasonsPresenter.ts index 2c43b07bb..29219be78 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueSeasonsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueSeasonsPresenter.ts @@ -1,5 +1,5 @@ -import type { Presenter } from '../../../shared/presentation/Presenter'; import type { GetLeagueSeasonsResult } from '@core/racing/application/use-cases/GetLeagueSeasonsUseCase'; +import type { Presenter } from '../../../shared/presentation/Presenter'; import { LeagueSeasonSummaryDTO } from '../dtos/LeagueSeasonSummaryDTO'; export class GetLeagueSeasonsPresenter implements Presenter { diff --git a/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts b/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts index 9a305c269..97060380d 100644 --- a/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetLeagueWalletPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { GetLeagueWalletResult } from '@core/racing/application/use-cases/GetLeagueWalletUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { GetLeagueWalletOutputDTO, WalletTransactionDTO } from '../dtos/GetLeagueWalletOutputDTO'; export class GetLeagueWalletPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts b/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts index f5f41e80a..9307ac497 100644 --- a/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts +++ b/apps/api/src/domain/league/presenters/GetSeasonSponsorshipsPresenter.ts @@ -1,7 +1,7 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetSeasonSponsorshipsResult } from '@core/racing/application/use-cases/GetSeasonSponsorshipsUseCase'; -import { GetSeasonSponsorshipsOutputDTO } from '../dtos/GetSeasonSponsorshipsOutputDTO'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { SponsorshipDetailDTO } from '../../sponsor/dtos/SponsorshipDetailDTO'; +import { GetSeasonSponsorshipsOutputDTO } from '../dtos/GetSeasonSponsorshipsOutputDTO'; export class GetSeasonSponsorshipsPresenter implements UseCaseOutputPort { private result: GetSeasonSponsorshipsOutputDTO | null = null; diff --git a/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts b/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts index 75724c410..6656d4e3d 100644 --- a/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts +++ b/apps/api/src/domain/league/presenters/JoinLeaguePresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { JoinLeagueResult } from '@core/racing/application/use-cases/JoinLeagueUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { JoinLeagueOutputDTO } from '../dtos/JoinLeagueOutputDTO'; export class JoinLeaguePresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueAdminPresenter.ts b/apps/api/src/domain/league/presenters/LeagueAdminPresenter.ts index 7387374f9..8c0a30409 100644 --- a/apps/api/src/domain/league/presenters/LeagueAdminPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueAdminPresenter.ts @@ -1,8 +1,8 @@ import { LeagueAdminDTO } from '../dtos/LeagueAdminDTO'; +import { LeagueAdminProtestsDTO } from '../dtos/LeagueAdminProtestsDTO'; +import { LeagueConfigFormModelDTO } from '../dtos/LeagueConfigFormModelDTO'; import { LeagueJoinRequestDTO } from '../dtos/LeagueJoinRequestDTO'; import { LeagueOwnerSummaryDTO } from '../dtos/LeagueOwnerSummaryDTO'; -import { LeagueConfigFormModelDTO } from '../dtos/LeagueConfigFormModelDTO'; -import { LeagueAdminProtestsDTO } from '../dtos/LeagueAdminProtestsDTO'; import { LeagueSeasonSummaryDTO } from '../dtos/LeagueSeasonSummaryDTO'; export class LeagueAdminPresenter { diff --git a/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts b/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts index 313253ba9..847cfa5c5 100644 --- a/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueConfigPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetLeagueFullConfigResult } from '@core/racing/application/use-cases/GetLeagueFullConfigUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { LeagueConfigFormModelDTO } from '../dtos/LeagueConfigFormModelDTO'; export class LeagueConfigPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.test.ts b/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.test.ts index 2409303e6..a9ab86dab 100644 --- a/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.test.ts @@ -1,5 +1,5 @@ -import { LeagueJoinRequestsPresenter } from './LeagueJoinRequestsPresenter'; import type { GetLeagueJoinRequestsResult } from '@core/racing/application/use-cases/GetLeagueJoinRequestsUseCase'; +import { LeagueJoinRequestsPresenter } from './LeagueJoinRequestsPresenter'; describe('LeagueJoinRequestsPresenter', () => { it('presents join requests correctly', () => { diff --git a/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts b/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts index 03eacd632..30d73c871 100644 --- a/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueJoinRequestsPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import { GetLeagueJoinRequestsResult } from '@core/racing/application/use-cases/GetLeagueJoinRequestsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { LeagueJoinRequestWithDriverDTO } from '../dtos/LeagueJoinRequestWithDriverDTO'; export interface LeagueJoinRequestsViewModel { diff --git a/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.test.ts b/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.test.ts index c14d1e908..93713e435 100644 --- a/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.test.ts @@ -1,5 +1,5 @@ -import { LeagueOwnerSummaryPresenter } from './LeagueOwnerSummaryPresenter'; import type { GetLeagueOwnerSummaryResult } from '@core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase'; +import { LeagueOwnerSummaryPresenter } from './LeagueOwnerSummaryPresenter'; describe('LeagueOwnerSummaryPresenter', () => { it('presents owner summary correctly', () => { diff --git a/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts b/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts index 7877923a5..3f789d304 100644 --- a/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueOwnerSummaryPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import { GetLeagueOwnerSummaryResult } from '@core/racing/application/use-cases/GetLeagueOwnerSummaryUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { LeagueOwnerSummaryDTO } from '../dtos/LeagueOwnerSummaryDTO'; export class LeagueOwnerSummaryPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts b/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts index 6efed3426..3684bba62 100644 --- a/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts +++ b/apps/api/src/domain/league/presenters/LeagueRosterAdminReadPresenters.ts @@ -1,10 +1,10 @@ -import { Injectable } from '@nestjs/common'; -import type { UseCaseOutputPort } from '@core/shared/application'; -import type { GetLeagueRosterMembersResult } from '@core/racing/application/use-cases/GetLeagueRosterMembersUseCase'; import type { GetLeagueRosterJoinRequestsResult } from '@core/racing/application/use-cases/GetLeagueRosterJoinRequestsUseCase'; -import type { LeagueRosterMemberDTO } from '../dtos/LeagueRosterMemberDTO'; -import type { LeagueRosterJoinRequestDTO } from '../dtos/LeagueRosterJoinRequestDTO'; +import type { GetLeagueRosterMembersResult } from '@core/racing/application/use-cases/GetLeagueRosterMembersUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; +import { Injectable } from '@nestjs/common'; import type { DriverDTO } from '../../driver/dtos/DriverDTO'; +import type { LeagueRosterJoinRequestDTO } from '../dtos/LeagueRosterJoinRequestDTO'; +import type { LeagueRosterMemberDTO } from '../dtos/LeagueRosterMemberDTO'; @Injectable() export class GetLeagueRosterMembersPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.test.ts b/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.test.ts index 34b1f3c4a..8310b273f 100644 --- a/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.test.ts +++ b/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.test.ts @@ -1,6 +1,6 @@ +import { Race } from '@core/racing/domain/entities/Race'; import { describe, expect, it } from 'vitest'; import { LeagueSchedulePresenter } from './LeagueSchedulePresenter'; -import { Race } from '@core/racing/domain/entities/Race'; describe('LeagueSchedulePresenter', () => { it('includes seasonId on the schedule DTO and serializes dates to ISO strings', () => { diff --git a/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts b/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts index 05a02209f..58de7c0e2 100644 --- a/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueSchedulePresenter.ts @@ -1,7 +1,7 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import { GetLeagueScheduleResult } from '@core/racing/application/use-cases/GetLeagueScheduleUseCase'; -import { LeagueScheduleDTO } from '../dtos/LeagueScheduleDTO'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { RaceDTO } from '../../race/dtos/RaceDTO'; +import { LeagueScheduleDTO } from '../dtos/LeagueScheduleDTO'; export class LeagueSchedulePresenter implements UseCaseOutputPort { private result: LeagueScheduleDTO | null = null; diff --git a/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts b/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts index 481abcf10..ae4b7f5ef 100644 --- a/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueScoringConfigPresenter.ts @@ -1,7 +1,7 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetLeagueScoringConfigResult } from '@core/racing/application/use-cases/GetLeagueScoringConfigUseCase'; -import type { ChampionshipConfig } from '@core/racing/domain/types/ChampionshipConfig'; import type { BonusRule } from '@core/racing/domain/types/BonusRule'; +import type { ChampionshipConfig } from '@core/racing/domain/types/ChampionshipConfig'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; export interface LeagueScoringChampionshipViewModel { id: string; diff --git a/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts b/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts index 381235cee..ce184e18e 100644 --- a/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueScoringPresetsPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { ListLeagueScoringPresetsResult } from '@core/racing/application/use-cases/ListLeagueScoringPresetsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { LeagueScoringPresetsDTO } from '../dtos/LeagueScoringPresetsDTO'; export type LeagueScoringPresetsViewModel = LeagueScoringPresetsDTO; diff --git a/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts b/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts index 1a0d36e21..ace892855 100644 --- a/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts +++ b/apps/api/src/domain/league/presenters/LeagueSeasonScheduleMutationPresenters.ts @@ -1,16 +1,16 @@ import type { UseCaseOutputPort } from '@core/shared/application'; import type { - CreateLeagueScheduleRaceOutputDTO, - LeagueScheduleRaceMutationSuccessDTO, + CreateLeagueScheduleRaceOutputDTO, + LeagueScheduleRaceMutationSuccessDTO, } from '../dtos/LeagueScheduleRaceAdminDTO'; import type { LeagueSeasonSchedulePublishOutputDTO } from '../dtos/LeagueSeasonSchedulePublishDTO'; import type { CreateLeagueSeasonScheduleRaceResult } from '@core/racing/application/use-cases/CreateLeagueSeasonScheduleRaceUseCase'; -import type { UpdateLeagueSeasonScheduleRaceResult } from '@core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase'; import type { DeleteLeagueSeasonScheduleRaceResult } from '@core/racing/application/use-cases/DeleteLeagueSeasonScheduleRaceUseCase'; import type { PublishLeagueSeasonScheduleResult } from '@core/racing/application/use-cases/PublishLeagueSeasonScheduleUseCase'; import type { UnpublishLeagueSeasonScheduleResult } from '@core/racing/application/use-cases/UnpublishLeagueSeasonScheduleUseCase'; +import type { UpdateLeagueSeasonScheduleRaceResult } from '@core/racing/application/use-cases/UpdateLeagueSeasonScheduleRaceUseCase'; export class CreateLeagueSeasonScheduleRacePresenter implements UseCaseOutputPort diff --git a/apps/api/src/domain/league/presenters/LeagueStandingsPresenter.ts b/apps/api/src/domain/league/presenters/LeagueStandingsPresenter.ts index 5923b2539..a9cd8d94a 100644 --- a/apps/api/src/domain/league/presenters/LeagueStandingsPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueStandingsPresenter.ts @@ -1,6 +1,6 @@ import type { GetLeagueStandingsResult } from '@core/racing/application/use-cases/GetLeagueStandingsUseCase'; -import { LeagueStandingsDTO } from '../dtos/LeagueStandingsDTO'; import type { Presenter } from '../../../shared/presentation/Presenter'; +import { LeagueStandingsDTO } from '../dtos/LeagueStandingsDTO'; export class LeagueStandingsPresenter implements Presenter { private result: LeagueStandingsDTO | null = null; diff --git a/apps/api/src/domain/league/presenters/LeagueStatsPresenter.ts b/apps/api/src/domain/league/presenters/LeagueStatsPresenter.ts index c6972a2b4..18692cb97 100644 --- a/apps/api/src/domain/league/presenters/LeagueStatsPresenter.ts +++ b/apps/api/src/domain/league/presenters/LeagueStatsPresenter.ts @@ -1,6 +1,6 @@ import type { GetLeagueStatsResult } from '@core/racing/application/use-cases/GetLeagueStatsUseCase'; -import { LeagueStatsDTO } from '../dtos/LeagueStatsDTO'; import type { Presenter } from '../../../shared/presentation/Presenter'; +import { LeagueStatsDTO } from '../dtos/LeagueStatsDTO'; export class LeagueStatsPresenter implements Presenter { private result: LeagueStatsDTO | null = null; diff --git a/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.test.ts b/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.test.ts index 7d8d105c0..44e57ebbd 100644 --- a/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it } from 'vitest'; import { RejectLeagueJoinRequestPresenter } from './RejectLeagueJoinRequestPresenter'; describe('RejectLeagueJoinRequestPresenter', () => { diff --git a/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts b/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts index d82a6b285..bb10fe32d 100644 --- a/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts +++ b/apps/api/src/domain/league/presenters/RejectLeagueJoinRequestPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { RejectLeagueJoinRequestResult } from '@core/racing/application/use-cases/RejectLeagueJoinRequestUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { RejectJoinRequestOutputDTO } from '../dtos/RejectJoinRequestOutputDTO'; export class RejectLeagueJoinRequestPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts b/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts index 3660930cb..7278902e7 100644 --- a/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts +++ b/apps/api/src/domain/league/presenters/RemoveLeagueMemberPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { RemoveLeagueMemberResult } from '@core/racing/application/use-cases/RemoveLeagueMemberUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { RemoveLeagueMemberOutputDTO } from '../dtos/RemoveLeagueMemberOutputDTO'; export class RemoveLeagueMemberPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/TotalLeaguesPresenter.test.ts b/apps/api/src/domain/league/presenters/TotalLeaguesPresenter.test.ts index 65c82fde1..5fd456710 100644 --- a/apps/api/src/domain/league/presenters/TotalLeaguesPresenter.test.ts +++ b/apps/api/src/domain/league/presenters/TotalLeaguesPresenter.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it } from 'vitest'; import { TotalLeaguesPresenter } from './TotalLeaguesPresenter'; describe('TotalLeaguesPresenter', () => { diff --git a/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts b/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts index 36ed4f683..746f779c5 100644 --- a/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts +++ b/apps/api/src/domain/league/presenters/TransferLeagueOwnershipPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { TransferLeagueOwnershipResult } from '@core/racing/application/use-cases/TransferLeagueOwnershipUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { TransferLeagueOwnershipOutputDTO } from '../dtos/TransferLeagueOwnershipOutputDTO'; export class TransferLeagueOwnershipPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts b/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts index b7de89ca8..09a78afce 100644 --- a/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts +++ b/apps/api/src/domain/league/presenters/UpdateLeagueMemberRolePresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { UpdateLeagueMemberRoleResult } from '@core/racing/application/use-cases/UpdateLeagueMemberRoleUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { UpdateLeagueMemberRoleOutputDTO } from '../dtos/UpdateLeagueMemberRoleOutputDTO'; export class UpdateLeagueMemberRolePresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts b/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts index 3381c182e..02034ee45 100644 --- a/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts +++ b/apps/api/src/domain/league/presenters/WithdrawFromLeagueWalletPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { WithdrawFromLeagueWalletResult } from '@core/racing/application/use-cases/WithdrawFromLeagueWalletUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import { WithdrawFromLeagueWalletOutputDTO } from '../dtos/WithdrawFromLeagueWalletOutputDTO'; export class WithdrawFromLeagueWalletPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/logging/LoggingModule.ts b/apps/api/src/domain/logging/LoggingModule.ts index 8103f6354..cdf90c860 100644 --- a/apps/api/src/domain/logging/LoggingModule.ts +++ b/apps/api/src/domain/logging/LoggingModule.ts @@ -1,5 +1,5 @@ -import { Global, Module } from '@nestjs/common'; import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; +import { Global, Module } from '@nestjs/common'; @Global() @Module({ diff --git a/apps/api/src/domain/media/DefaultAvatarAssets.http.test.ts b/apps/api/src/domain/media/DefaultAvatarAssets.http.test.ts index de2471bb5..ac9248c74 100644 --- a/apps/api/src/domain/media/DefaultAvatarAssets.http.test.ts +++ b/apps/api/src/domain/media/DefaultAvatarAssets.http.test.ts @@ -1,7 +1,7 @@ import 'reflect-metadata'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import request from 'supertest'; import { afterAll, beforeAll, describe, expect, it, vi } from 'vitest'; diff --git a/apps/api/src/domain/media/MediaController.test.ts b/apps/api/src/domain/media/MediaController.test.ts index 9f1f1e3ee..621b7347c 100644 --- a/apps/api/src/domain/media/MediaController.test.ts +++ b/apps/api/src/domain/media/MediaController.test.ts @@ -1,30 +1,30 @@ import 'reflect-metadata'; +import { MediaResolverAdapter } from '@adapters/media/MediaResolverAdapter'; +import { MediaGenerationService } from '@core/media/domain/services/MediaGenerationService'; import { Reflector } from '@nestjs/core'; import { Test, TestingModule } from '@nestjs/testing'; +import type { Response } from 'express'; import request from 'supertest'; import { vi } from 'vitest'; -import { MediaController } from './MediaController'; -import { MediaService } from './MediaService'; -import type { Response } from 'express'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; -import { RequestAvatarGenerationInputDTO } from './dtos/RequestAvatarGenerationInputDTO'; -import { UploadMediaInputDTO } from './dtos/UploadMediaInputDTO'; -import { RequestAvatarGenerationOutputDTO } from './dtos/RequestAvatarGenerationOutputDTO'; -import { UploadMediaOutputDTO } from './dtos/UploadMediaOutputDTO'; -import { GetMediaOutputDTO } from './dtos/GetMediaOutputDTO'; import { DeleteMediaOutputDTO } from './dtos/DeleteMediaOutputDTO'; import { GetAvatarOutputDTO } from './dtos/GetAvatarOutputDTO'; -import { UpdateAvatarOutputDTO } from './dtos/UpdateAvatarOutputDTO'; +import { GetMediaOutputDTO } from './dtos/GetMediaOutputDTO'; +import { RequestAvatarGenerationInputDTO } from './dtos/RequestAvatarGenerationInputDTO'; +import { RequestAvatarGenerationOutputDTO } from './dtos/RequestAvatarGenerationOutputDTO'; import { UpdateAvatarInputDTO } from './dtos/UpdateAvatarInputDTO'; -import type { MulterFile } from './types/MulterFile'; -import { MediaGenerationService } from '@core/media/domain/services/MediaGenerationService'; -import { MediaResolverAdapter } from '@adapters/media/MediaResolverAdapter'; +import { UpdateAvatarOutputDTO } from './dtos/UpdateAvatarOutputDTO'; +import { UploadMediaInputDTO } from './dtos/UploadMediaInputDTO'; +import { UploadMediaOutputDTO } from './dtos/UploadMediaOutputDTO'; +import { MediaController } from './MediaController'; +import { MediaService } from './MediaService'; import { LOGGER_TOKEN, MEDIA_STORAGE_PORT_TOKEN } from './MediaTokens'; +import type { MulterFile } from './types/MulterFile'; describe('MediaController', () => { let controller: MediaController; diff --git a/apps/api/src/domain/media/MediaController.ts b/apps/api/src/domain/media/MediaController.ts index 3157eb72f..eeb3e689a 100644 --- a/apps/api/src/domain/media/MediaController.ts +++ b/apps/api/src/domain/media/MediaController.ts @@ -1,27 +1,27 @@ -import { Controller, Post, Get, Delete, Put, Body, HttpStatus, Res, Param, UseInterceptors, UploadedFile, Inject } from '@nestjs/common'; -import { ApiTags, ApiResponse, ApiOperation, ApiParam, ApiConsumes } from '@nestjs/swagger'; -import type { Response } from 'express'; +import { MediaReference } from '@core/domain/media/MediaReference'; +import { MediaGenerationService } from '@core/media/domain/services/MediaGenerationService'; +import type { Logger } from '@core/shared/application/Logger'; +import { Body, Controller, Delete, Get, HttpStatus, Inject, Param, Post, Put, Res, UploadedFile, UseInterceptors } from '@nestjs/common'; import { FileInterceptor } from '@nestjs/platform-express'; +import { ApiConsumes, ApiOperation, ApiParam, ApiResponse, ApiTags } from '@nestjs/swagger'; +import type { Response } from 'express'; +import fs from 'node:fs/promises'; +import path from 'node:path'; import { Public } from '../auth/Public'; import { MediaService } from './MediaService'; -import { RequestAvatarGenerationInputDTO } from './dtos/RequestAvatarGenerationInputDTO'; -import { RequestAvatarGenerationOutputDTO } from './dtos/RequestAvatarGenerationOutputDTO'; -import { UploadMediaInputDTO } from './dtos/UploadMediaInputDTO'; -import { UploadMediaOutputDTO } from './dtos/UploadMediaOutputDTO'; -import { GetMediaOutputDTO } from './dtos/GetMediaOutputDTO'; +import { LOGGER_TOKEN } from './MediaTokens'; import { DeleteMediaOutputDTO } from './dtos/DeleteMediaOutputDTO'; import { GetAvatarOutputDTO } from './dtos/GetAvatarOutputDTO'; +import { GetMediaOutputDTO } from './dtos/GetMediaOutputDTO'; +import { RequestAvatarGenerationInputDTO } from './dtos/RequestAvatarGenerationInputDTO'; +import { RequestAvatarGenerationOutputDTO } from './dtos/RequestAvatarGenerationOutputDTO'; import { UpdateAvatarInputDTO } from './dtos/UpdateAvatarInputDTO'; import { UpdateAvatarOutputDTO } from './dtos/UpdateAvatarOutputDTO'; +import { UploadMediaInputDTO } from './dtos/UploadMediaInputDTO'; +import { UploadMediaOutputDTO } from './dtos/UploadMediaOutputDTO'; import { ValidateFaceInputDTO } from './dtos/ValidateFaceInputDTO'; import { ValidateFaceOutputDTO } from './dtos/ValidateFaceOutputDTO'; import type { MulterFile } from './types/MulterFile'; -import { MediaGenerationService } from '@core/media/domain/services/MediaGenerationService'; -import type { Logger } from '@core/shared/application/Logger'; -import { MediaReference } from '@core/domain/media/MediaReference'; -import { LOGGER_TOKEN } from './MediaTokens'; -import path from 'node:path'; -import fs from 'node:fs/promises'; type RequestAvatarGenerationInput = RequestAvatarGenerationInputDTO; type UploadMediaInput = UploadMediaInputDTO; diff --git a/apps/api/src/domain/media/MediaModule.test.ts b/apps/api/src/domain/media/MediaModule.test.ts index 83cb77f7c..3495ecd1b 100644 --- a/apps/api/src/domain/media/MediaModule.test.ts +++ b/apps/api/src/domain/media/MediaModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { MediaModule } from './MediaModule'; import { MediaController } from './MediaController'; +import { MediaModule } from './MediaModule'; import { MediaService } from './MediaService'; describe('MediaModule', () => { diff --git a/apps/api/src/domain/media/MediaModule.ts b/apps/api/src/domain/media/MediaModule.ts index cc5c5e218..d756af13e 100644 --- a/apps/api/src/domain/media/MediaModule.ts +++ b/apps/api/src/domain/media/MediaModule.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; -import { MediaService } from './MediaService'; +import { MediaPersistenceModule } from '../../persistence/media/MediaPersistenceModule'; import { MediaController } from './MediaController'; import { MediaProviders } from './MediaProviders'; -import { MediaPersistenceModule } from '../../persistence/media/MediaPersistenceModule'; +import { MediaService } from './MediaService'; @Module({ imports: [MediaPersistenceModule], diff --git a/apps/api/src/domain/media/MediaService.test.ts b/apps/api/src/domain/media/MediaService.test.ts index fca132432..d89792676 100644 --- a/apps/api/src/domain/media/MediaService.test.ts +++ b/apps/api/src/domain/media/MediaService.test.ts @@ -1,5 +1,5 @@ -import { describe, expect, it, vi } from 'vitest'; import { Result } from '@core/shared/domain/Result'; +import { describe, expect, it, vi } from 'vitest'; import { MediaService } from './MediaService'; describe('MediaService', () => { diff --git a/apps/api/src/domain/media/dtos/AvatarDTO.ts b/apps/api/src/domain/media/dtos/AvatarDTO.ts index 905eb8ac6..6c9801bf1 100644 --- a/apps/api/src/domain/media/dtos/AvatarDTO.ts +++ b/apps/api/src/domain/media/dtos/AvatarDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional } from 'class-validator'; +import { IsOptional, IsString } from 'class-validator'; export class AvatarDTO { @ApiProperty() diff --git a/apps/api/src/domain/media/dtos/DeleteMediaOutputDTO.ts b/apps/api/src/domain/media/dtos/DeleteMediaOutputDTO.ts index a99412058..9c28836bd 100644 --- a/apps/api/src/domain/media/dtos/DeleteMediaOutputDTO.ts +++ b/apps/api/src/domain/media/dtos/DeleteMediaOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsBoolean, IsString, IsOptional } from 'class-validator'; +import { IsBoolean, IsOptional, IsString } from 'class-validator'; export class DeleteMediaOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/media/dtos/GetMediaOutputDTO.ts b/apps/api/src/domain/media/dtos/GetMediaOutputDTO.ts index 2d284d61a..adb6c6503 100644 --- a/apps/api/src/domain/media/dtos/GetMediaOutputDTO.ts +++ b/apps/api/src/domain/media/dtos/GetMediaOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional, IsNumber } from 'class-validator'; +import { IsNumber, IsOptional, IsString } from 'class-validator'; export class GetMediaOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/media/dtos/RequestAvatarGenerationInputDTO.ts b/apps/api/src/domain/media/dtos/RequestAvatarGenerationInputDTO.ts index bf0337939..43e0f529f 100644 --- a/apps/api/src/domain/media/dtos/RequestAvatarGenerationInputDTO.ts +++ b/apps/api/src/domain/media/dtos/RequestAvatarGenerationInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class RequestAvatarGenerationInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/media/dtos/UpdateAvatarOutputDTO.ts b/apps/api/src/domain/media/dtos/UpdateAvatarOutputDTO.ts index f0740e1a8..0d1f25414 100644 --- a/apps/api/src/domain/media/dtos/UpdateAvatarOutputDTO.ts +++ b/apps/api/src/domain/media/dtos/UpdateAvatarOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsBoolean, IsString, IsOptional } from 'class-validator'; +import { IsBoolean, IsOptional, IsString } from 'class-validator'; export class UpdateAvatarOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/media/dtos/UploadMediaInputDTO.ts b/apps/api/src/domain/media/dtos/UploadMediaInputDTO.ts index c2cf93a7f..93b7f73fa 100644 --- a/apps/api/src/domain/media/dtos/UploadMediaInputDTO.ts +++ b/apps/api/src/domain/media/dtos/UploadMediaInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional } from 'class-validator'; +import { IsOptional, IsString } from 'class-validator'; export class UploadMediaInputDTO { @ApiProperty({ type: 'string', format: 'binary' }) diff --git a/apps/api/src/domain/media/dtos/UploadMediaOutputDTO.ts b/apps/api/src/domain/media/dtos/UploadMediaOutputDTO.ts index ef2b319b4..2fc235ec6 100644 --- a/apps/api/src/domain/media/dtos/UploadMediaOutputDTO.ts +++ b/apps/api/src/domain/media/dtos/UploadMediaOutputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean, IsOptional } from 'class-validator'; +import { IsBoolean, IsOptional, IsString } from 'class-validator'; export class UploadMediaOutputDTO { @ApiProperty() diff --git a/apps/api/src/domain/media/dtos/ValidateFaceInputDTO.ts b/apps/api/src/domain/media/dtos/ValidateFaceInputDTO.ts index 4ce924dce..b014e5a01 100644 --- a/apps/api/src/domain/media/dtos/ValidateFaceInputDTO.ts +++ b/apps/api/src/domain/media/dtos/ValidateFaceInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class ValidateFaceInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/notifications/NotificationsController.ts b/apps/api/src/domain/notifications/NotificationsController.ts index f7fb2ae80..ab84818d4 100644 --- a/apps/api/src/domain/notifications/NotificationsController.ts +++ b/apps/api/src/domain/notifications/NotificationsController.ts @@ -1,4 +1,4 @@ -import { Controller, Get, Post, Param, Req, Inject, HttpStatus, Res } from '@nestjs/common'; +import { Controller, Get, HttpStatus, Inject, Param, Post, Req, Res } from '@nestjs/common'; import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import type { Response } from 'express'; diff --git a/apps/api/src/domain/notifications/NotificationsModule.ts b/apps/api/src/domain/notifications/NotificationsModule.ts index e2b42e9e6..de4b2d0dd 100644 --- a/apps/api/src/domain/notifications/NotificationsModule.ts +++ b/apps/api/src/domain/notifications/NotificationsModule.ts @@ -2,8 +2,8 @@ import { Module } from '@nestjs/common'; import { NotificationsPersistenceModule } from '../../persistence/notifications/NotificationsPersistenceModule'; import { NotificationsController } from './NotificationsController'; -import { NotificationsService } from './NotificationsService'; import { NotificationsProviders } from './NotificationsProviders'; +import { NotificationsService } from './NotificationsService'; @Module({ imports: [NotificationsPersistenceModule], diff --git a/apps/api/src/domain/notifications/NotificationsProviders.ts b/apps/api/src/domain/notifications/NotificationsProviders.ts index e4ba81ebc..e1e2cda20 100644 --- a/apps/api/src/domain/notifications/NotificationsProviders.ts +++ b/apps/api/src/domain/notifications/NotificationsProviders.ts @@ -1,16 +1,16 @@ -import { Provider } from '@nestjs/common'; import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; -import type { Logger } from '@core/shared/application/Logger'; -import { GetUnreadNotificationsUseCase } from '@core/notifications/application/use-cases/GetUnreadNotificationsUseCase'; import { GetAllNotificationsUseCase } from '@core/notifications/application/use-cases/GetAllNotificationsUseCase'; +import { GetUnreadNotificationsUseCase } from '@core/notifications/application/use-cases/GetUnreadNotificationsUseCase'; import { MarkNotificationReadUseCase } from '@core/notifications/application/use-cases/MarkNotificationReadUseCase'; import { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; +import type { Logger } from '@core/shared/application/Logger'; +import { Provider } from '@nestjs/common'; import { NOTIFICATION_REPOSITORY_TOKEN } from '../../persistence/notifications/NotificationsPersistenceTokens'; import { - GET_UNREAD_NOTIFICATIONS_USE_CASE_TOKEN, - GET_ALL_NOTIFICATIONS_USE_CASE_TOKEN, - MARK_NOTIFICATION_READ_USE_CASE_TOKEN, - LOGGER_TOKEN, + GET_ALL_NOTIFICATIONS_USE_CASE_TOKEN, + GET_UNREAD_NOTIFICATIONS_USE_CASE_TOKEN, + LOGGER_TOKEN, + MARK_NOTIFICATION_READ_USE_CASE_TOKEN, } from './NotificationsTokens'; export const NotificationsProviders: Provider[] = [ diff --git a/apps/api/src/domain/notifications/NotificationsService.ts b/apps/api/src/domain/notifications/NotificationsService.ts index 4138060ef..a4308a67a 100644 --- a/apps/api/src/domain/notifications/NotificationsService.ts +++ b/apps/api/src/domain/notifications/NotificationsService.ts @@ -1,11 +1,11 @@ -import { Inject, Injectable } from '@nestjs/common'; -import { GetUnreadNotificationsUseCase } from '@core/notifications/application/use-cases/GetUnreadNotificationsUseCase'; import { GetAllNotificationsUseCase } from '@core/notifications/application/use-cases/GetAllNotificationsUseCase'; +import { GetUnreadNotificationsUseCase } from '@core/notifications/application/use-cases/GetUnreadNotificationsUseCase'; import { MarkNotificationReadUseCase } from '@core/notifications/application/use-cases/MarkNotificationReadUseCase'; +import { Inject, Injectable } from '@nestjs/common'; import { - GET_UNREAD_NOTIFICATIONS_USE_CASE_TOKEN, - GET_ALL_NOTIFICATIONS_USE_CASE_TOKEN, - MARK_NOTIFICATION_READ_USE_CASE_TOKEN, + GET_ALL_NOTIFICATIONS_USE_CASE_TOKEN, + GET_UNREAD_NOTIFICATIONS_USE_CASE_TOKEN, + MARK_NOTIFICATION_READ_USE_CASE_TOKEN, } from './NotificationsTokens'; @Injectable() diff --git a/apps/api/src/domain/payments/PaymentsController.test.ts b/apps/api/src/domain/payments/PaymentsController.test.ts index c52c0642d..4d1c1a4a1 100644 --- a/apps/api/src/domain/payments/PaymentsController.test.ts +++ b/apps/api/src/domain/payments/PaymentsController.test.ts @@ -4,46 +4,46 @@ import { Reflector } from '@nestjs/core'; import { Test, TestingModule } from '@nestjs/testing'; import request from 'supertest'; import { vi } from 'vitest'; -import { PaymentsController } from './PaymentsController'; -import { PaymentsService } from './PaymentsService'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; import { - GetPaymentsQuery, - CreatePaymentInput, - UpdatePaymentStatusInput, - GetMembershipFeesQuery, - UpsertMembershipFeeInput, - UpdateMemberPaymentInput, - GetPrizesQuery, - CreatePrizeInput, - AwardPrizeInput, - DeletePrizeInput, - GetWalletQuery, - ProcessWalletTransactionInput, - PaymentType, - PayerType, - PaymentStatus, - MembershipFeeType, - MemberPaymentStatus, - PrizeType, - TransactionType, - GetPaymentsOutput, - CreatePaymentOutput, - UpdatePaymentStatusOutput, - GetMembershipFeesOutput, - UpsertMembershipFeeOutput, - UpdateMemberPaymentOutput, - GetPrizesOutput, - CreatePrizeOutput, - AwardPrizeOutput, - DeletePrizeOutput, - GetWalletOutput, - ProcessWalletTransactionOutput + AwardPrizeInput, + AwardPrizeOutput, + CreatePaymentInput, + CreatePaymentOutput, + CreatePrizeInput, + CreatePrizeOutput, + DeletePrizeInput, + DeletePrizeOutput, + GetMembershipFeesOutput, + GetMembershipFeesQuery, + GetPaymentsOutput, + GetPaymentsQuery, + GetPrizesOutput, + GetPrizesQuery, + GetWalletOutput, + GetWalletQuery, + MemberPaymentStatus, + MembershipFeeType, + PayerType, + PaymentStatus, + PaymentType, + PrizeType, + ProcessWalletTransactionInput, + ProcessWalletTransactionOutput, + TransactionType, + UpdateMemberPaymentInput, + UpdateMemberPaymentOutput, + UpdatePaymentStatusInput, + UpdatePaymentStatusOutput, + UpsertMembershipFeeInput, + UpsertMembershipFeeOutput } from './dtos/PaymentsDto'; +import { PaymentsController } from './PaymentsController'; +import { PaymentsService } from './PaymentsService'; describe('PaymentsController', () => { let controller: PaymentsController; diff --git a/apps/api/src/domain/payments/PaymentsController.ts b/apps/api/src/domain/payments/PaymentsController.ts index 1102673e2..9058e87d5 100644 --- a/apps/api/src/domain/payments/PaymentsController.ts +++ b/apps/api/src/domain/payments/PaymentsController.ts @@ -1,10 +1,10 @@ -import { Controller, Get, Post, Patch, Delete, Body, Query, HttpCode, HttpStatus, Inject } from '@nestjs/common'; -import { ApiTags, ApiResponse, ApiOperation } from '@nestjs/swagger'; +import { Body, Controller, Delete, Get, HttpCode, HttpStatus, Inject, Patch, Post, Query } from '@nestjs/common'; +import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import { RequireAuthenticatedUser } from '../auth/RequireAuthenticatedUser'; import { RequireRoles } from '../auth/RequireRoles'; import { RequireCapability } from '../policy/RequireCapability'; import { PaymentsService } from './PaymentsService'; -import { CreatePaymentInput, CreatePaymentOutput, UpdatePaymentStatusInput, UpdatePaymentStatusOutput, GetPaymentsQuery, GetPaymentsOutput, GetMembershipFeesQuery, GetMembershipFeesOutput, UpsertMembershipFeeInput, UpsertMembershipFeeOutput, UpdateMemberPaymentInput, UpdateMemberPaymentOutput, GetPrizesQuery, GetPrizesOutput, CreatePrizeInput, CreatePrizeOutput, AwardPrizeInput, AwardPrizeOutput, DeletePrizeInput, DeletePrizeOutput, GetWalletQuery, GetWalletOutput, ProcessWalletTransactionInput, ProcessWalletTransactionOutput } from './dtos/PaymentsDto'; +import { AwardPrizeInput, AwardPrizeOutput, CreatePaymentInput, CreatePaymentOutput, CreatePrizeInput, CreatePrizeOutput, DeletePrizeInput, DeletePrizeOutput, GetMembershipFeesOutput, GetMembershipFeesQuery, GetPaymentsOutput, GetPaymentsQuery, GetPrizesOutput, GetPrizesQuery, GetWalletOutput, GetWalletQuery, ProcessWalletTransactionInput, ProcessWalletTransactionOutput, UpdateMemberPaymentInput, UpdateMemberPaymentOutput, UpdatePaymentStatusInput, UpdatePaymentStatusOutput, UpsertMembershipFeeInput, UpsertMembershipFeeOutput } from './dtos/PaymentsDto'; @ApiTags('payments') @RequireAuthenticatedUser() diff --git a/apps/api/src/domain/payments/PaymentsModule.test.ts b/apps/api/src/domain/payments/PaymentsModule.test.ts index 8dd18d926..57b5cab24 100644 --- a/apps/api/src/domain/payments/PaymentsModule.test.ts +++ b/apps/api/src/domain/payments/PaymentsModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { PaymentsModule } from './PaymentsModule'; import { PaymentsController } from './PaymentsController'; +import { PaymentsModule } from './PaymentsModule'; import { PaymentsService } from './PaymentsService'; describe('PaymentsModule', () => { diff --git a/apps/api/src/domain/payments/PaymentsModule.ts b/apps/api/src/domain/payments/PaymentsModule.ts index 368267de9..8aefaf275 100644 --- a/apps/api/src/domain/payments/PaymentsModule.ts +++ b/apps/api/src/domain/payments/PaymentsModule.ts @@ -2,9 +2,9 @@ import { Module } from '@nestjs/common'; import { PaymentsPersistenceModule } from '../../persistence/payments/PaymentsPersistenceModule'; -import { PaymentsService } from './PaymentsService'; import { PaymentsController } from './PaymentsController'; import { PaymentsProviders } from './PaymentsProviders'; +import { PaymentsService } from './PaymentsService'; @Module({ imports: [PaymentsPersistenceModule], diff --git a/apps/api/src/domain/payments/PaymentsProviders.ts b/apps/api/src/domain/payments/PaymentsProviders.ts index bd61e81e3..db76dcb99 100644 --- a/apps/api/src/domain/payments/PaymentsProviders.ts +++ b/apps/api/src/domain/payments/PaymentsProviders.ts @@ -1,48 +1,48 @@ import { Provider } from '@nestjs/common'; // Import core interfaces +import type { IMemberPaymentRepository, IMembershipFeeRepository } from '@core/payments/domain/repositories/MembershipFeeRepository'; import type { IPaymentRepository } from '@core/payments/domain/repositories/PaymentRepository'; -import type { IMembershipFeeRepository, IMemberPaymentRepository } from '@core/payments/domain/repositories/MembershipFeeRepository'; import type { IPrizeRepository } from '@core/payments/domain/repositories/PrizeRepository'; -import type { IWalletRepository, ITransactionRepository } from '@core/payments/domain/repositories/WalletRepository'; +import type { ITransactionRepository, IWalletRepository } from '@core/payments/domain/repositories/WalletRepository'; // Import use cases -import { GetPaymentsUseCase } from '@core/payments/application/use-cases/GetPaymentsUseCase'; -import { CreatePaymentUseCase } from '@core/payments/application/use-cases/CreatePaymentUseCase'; -import { UpdatePaymentStatusUseCase } from '@core/payments/application/use-cases/UpdatePaymentStatusUseCase'; -import { GetMembershipFeesUseCase } from '@core/payments/application/use-cases/GetMembershipFeesUseCase'; -import { UpsertMembershipFeeUseCase } from '@core/payments/application/use-cases/UpsertMembershipFeeUseCase'; -import { UpdateMemberPaymentUseCase } from '@core/payments/application/use-cases/UpdateMemberPaymentUseCase'; -import { GetPrizesUseCase } from '@core/payments/application/use-cases/GetPrizesUseCase'; -import { CreatePrizeUseCase } from '@core/payments/application/use-cases/CreatePrizeUseCase'; import { AwardPrizeUseCase } from '@core/payments/application/use-cases/AwardPrizeUseCase'; +import { CreatePaymentUseCase } from '@core/payments/application/use-cases/CreatePaymentUseCase'; +import { CreatePrizeUseCase } from '@core/payments/application/use-cases/CreatePrizeUseCase'; import { DeletePrizeUseCase } from '@core/payments/application/use-cases/DeletePrizeUseCase'; +import { GetMembershipFeesUseCase } from '@core/payments/application/use-cases/GetMembershipFeesUseCase'; +import { GetPaymentsUseCase } from '@core/payments/application/use-cases/GetPaymentsUseCase'; +import { GetPrizesUseCase } from '@core/payments/application/use-cases/GetPrizesUseCase'; import { GetWalletUseCase } from '@core/payments/application/use-cases/GetWalletUseCase'; import { ProcessWalletTransactionUseCase } from '@core/payments/application/use-cases/ProcessWalletTransactionUseCase'; +import { UpdateMemberPaymentUseCase } from '@core/payments/application/use-cases/UpdateMemberPaymentUseCase'; +import { UpdatePaymentStatusUseCase } from '@core/payments/application/use-cases/UpdatePaymentStatusUseCase'; +import { UpsertMembershipFeeUseCase } from '@core/payments/application/use-cases/UpsertMembershipFeeUseCase'; // Import concrete in-memory implementations import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; import { - PAYMENT_REPOSITORY_TOKEN, - MEMBERSHIP_FEE_REPOSITORY_TOKEN, - MEMBER_PAYMENT_REPOSITORY_TOKEN, - PRIZE_REPOSITORY_TOKEN, - WALLET_REPOSITORY_TOKEN, - TRANSACTION_REPOSITORY_TOKEN, - LOGGER_TOKEN, - GET_PAYMENTS_USE_CASE_TOKEN, - CREATE_PAYMENT_USE_CASE_TOKEN, - UPDATE_PAYMENT_STATUS_USE_CASE_TOKEN, - GET_MEMBERSHIP_FEES_USE_CASE_TOKEN, - UPSERT_MEMBERSHIP_FEE_USE_CASE_TOKEN, - UPDATE_MEMBER_PAYMENT_USE_CASE_TOKEN, - GET_PRIZES_USE_CASE_TOKEN, - CREATE_PRIZE_USE_CASE_TOKEN, - AWARD_PRIZE_USE_CASE_TOKEN, - DELETE_PRIZE_USE_CASE_TOKEN, - GET_WALLET_USE_CASE_TOKEN, - PROCESS_WALLET_TRANSACTION_USE_CASE_TOKEN, + AWARD_PRIZE_USE_CASE_TOKEN, + CREATE_PAYMENT_USE_CASE_TOKEN, + CREATE_PRIZE_USE_CASE_TOKEN, + DELETE_PRIZE_USE_CASE_TOKEN, + GET_MEMBERSHIP_FEES_USE_CASE_TOKEN, + GET_PAYMENTS_USE_CASE_TOKEN, + GET_PRIZES_USE_CASE_TOKEN, + GET_WALLET_USE_CASE_TOKEN, + LOGGER_TOKEN, + MEMBERSHIP_FEE_REPOSITORY_TOKEN, + MEMBER_PAYMENT_REPOSITORY_TOKEN, + PAYMENT_REPOSITORY_TOKEN, + PRIZE_REPOSITORY_TOKEN, + PROCESS_WALLET_TRANSACTION_USE_CASE_TOKEN, + TRANSACTION_REPOSITORY_TOKEN, + UPDATE_MEMBER_PAYMENT_USE_CASE_TOKEN, + UPDATE_PAYMENT_STATUS_USE_CASE_TOKEN, + UPSERT_MEMBERSHIP_FEE_USE_CASE_TOKEN, + WALLET_REPOSITORY_TOKEN, } from './PaymentsTokens'; export * from './PaymentsTokens'; diff --git a/apps/api/src/domain/payments/PaymentsService.test.ts b/apps/api/src/domain/payments/PaymentsService.test.ts index 4fdb39bf2..49fafb171 100644 --- a/apps/api/src/domain/payments/PaymentsService.test.ts +++ b/apps/api/src/domain/payments/PaymentsService.test.ts @@ -1,5 +1,5 @@ -import { describe, expect, it, vi } from 'vitest'; import { Result } from '@core/shared/domain/Result'; +import { describe, expect, it, vi } from 'vitest'; import { PaymentsService } from './PaymentsService'; describe('PaymentsService', () => { diff --git a/apps/api/src/domain/payments/PaymentsService.ts b/apps/api/src/domain/payments/PaymentsService.ts index d0ee90d2c..cc97918ee 100644 --- a/apps/api/src/domain/payments/PaymentsService.ts +++ b/apps/api/src/domain/payments/PaymentsService.ts @@ -17,47 +17,47 @@ import type { UpsertMembershipFeeUseCase } from '@core/payments/application/use- // DTOs import type { - AwardPrizeInput, - AwardPrizeOutput, - CreatePaymentInput, - CreatePaymentOutput, - CreatePrizeInput, - CreatePrizeOutput, - DeletePrizeInput, - DeletePrizeOutput, - GetMembershipFeesOutput, - GetMembershipFeesQuery, - GetPaymentsOutput, - GetPaymentsQuery, - GetPrizesOutput, - GetPrizesQuery, - GetWalletOutput, - GetWalletQuery, - ProcessWalletTransactionInput, - ProcessWalletTransactionOutput, - UpdateMemberPaymentInput, - UpdateMemberPaymentOutput, - UpdatePaymentStatusInput, - UpdatePaymentStatusOutput, - UpsertMembershipFeeInput, - UpsertMembershipFeeOutput, + AwardPrizeInput, + AwardPrizeOutput, + CreatePaymentInput, + CreatePaymentOutput, + CreatePrizeInput, + CreatePrizeOutput, + DeletePrizeInput, + DeletePrizeOutput, + GetMembershipFeesOutput, + GetMembershipFeesQuery, + GetPaymentsOutput, + GetPaymentsQuery, + GetPrizesOutput, + GetPrizesQuery, + GetWalletOutput, + GetWalletQuery, + ProcessWalletTransactionInput, + ProcessWalletTransactionOutput, + UpdateMemberPaymentInput, + UpdateMemberPaymentOutput, + UpdatePaymentStatusInput, + UpdatePaymentStatusOutput, + UpsertMembershipFeeInput, + UpsertMembershipFeeOutput, } from './dtos/PaymentsDto'; // Injection tokens import { - AWARD_PRIZE_USE_CASE_TOKEN, - CREATE_PAYMENT_USE_CASE_TOKEN, - CREATE_PRIZE_USE_CASE_TOKEN, - DELETE_PRIZE_USE_CASE_TOKEN, - GET_MEMBERSHIP_FEES_USE_CASE_TOKEN, - GET_PAYMENTS_USE_CASE_TOKEN, - GET_PRIZES_USE_CASE_TOKEN, - GET_WALLET_USE_CASE_TOKEN, - LOGGER_TOKEN, - PROCESS_WALLET_TRANSACTION_USE_CASE_TOKEN, - UPDATE_MEMBER_PAYMENT_USE_CASE_TOKEN, - UPDATE_PAYMENT_STATUS_USE_CASE_TOKEN, - UPSERT_MEMBERSHIP_FEE_USE_CASE_TOKEN, + AWARD_PRIZE_USE_CASE_TOKEN, + CREATE_PAYMENT_USE_CASE_TOKEN, + CREATE_PRIZE_USE_CASE_TOKEN, + DELETE_PRIZE_USE_CASE_TOKEN, + GET_MEMBERSHIP_FEES_USE_CASE_TOKEN, + GET_PAYMENTS_USE_CASE_TOKEN, + GET_PRIZES_USE_CASE_TOKEN, + GET_WALLET_USE_CASE_TOKEN, + LOGGER_TOKEN, + PROCESS_WALLET_TRANSACTION_USE_CASE_TOKEN, + UPDATE_MEMBER_PAYMENT_USE_CASE_TOKEN, + UPDATE_PAYMENT_STATUS_USE_CASE_TOKEN, + UPSERT_MEMBERSHIP_FEE_USE_CASE_TOKEN, } from './PaymentsTokens'; @Injectable() diff --git a/apps/api/src/domain/payments/PaymentsTokens.ts b/apps/api/src/domain/payments/PaymentsTokens.ts index 45c74182d..cba3b12e5 100644 --- a/apps/api/src/domain/payments/PaymentsTokens.ts +++ b/apps/api/src/domain/payments/PaymentsTokens.ts @@ -1,10 +1,10 @@ import { - PAYMENTS_MEMBER_PAYMENT_REPOSITORY_TOKEN, - PAYMENTS_MEMBERSHIP_FEE_REPOSITORY_TOKEN, - PAYMENTS_PAYMENT_REPOSITORY_TOKEN, - PAYMENTS_PRIZE_REPOSITORY_TOKEN, - PAYMENTS_TRANSACTION_REPOSITORY_TOKEN, - PAYMENTS_WALLET_REPOSITORY_TOKEN, + PAYMENTS_MEMBER_PAYMENT_REPOSITORY_TOKEN, + PAYMENTS_MEMBERSHIP_FEE_REPOSITORY_TOKEN, + PAYMENTS_PAYMENT_REPOSITORY_TOKEN, + PAYMENTS_PRIZE_REPOSITORY_TOKEN, + PAYMENTS_TRANSACTION_REPOSITORY_TOKEN, + PAYMENTS_WALLET_REPOSITORY_TOKEN, } from '../../persistence/payments/PaymentsPersistenceTokens'; export const PAYMENT_REPOSITORY_TOKEN = PAYMENTS_PAYMENT_REPOSITORY_TOKEN; diff --git a/apps/api/src/domain/payments/dtos/CreatePaymentInputDTO.ts b/apps/api/src/domain/payments/dtos/CreatePaymentInputDTO.ts index 460bae750..731c3a02c 100644 --- a/apps/api/src/domain/payments/dtos/CreatePaymentInputDTO.ts +++ b/apps/api/src/domain/payments/dtos/CreatePaymentInputDTO.ts @@ -1,7 +1,7 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsEnum, IsNumber, IsString, IsOptional } from 'class-validator'; -import { PaymentType } from './PaymentType'; +import { IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; import { PayerType } from './PayerType'; +import { PaymentType } from './PaymentType'; export class CreatePaymentInputDTO { @ApiProperty({ enum: PaymentType }) diff --git a/apps/api/src/domain/payments/dtos/FullTransactionDto.ts b/apps/api/src/domain/payments/dtos/FullTransactionDto.ts index 50034b642..bd61938e3 100644 --- a/apps/api/src/domain/payments/dtos/FullTransactionDto.ts +++ b/apps/api/src/domain/payments/dtos/FullTransactionDto.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsEnum, IsOptional, IsDate } from 'class-validator'; -import { TransactionType, ReferenceType } from './PaymentsDto'; +import { IsDate, IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; +import { ReferenceType, TransactionType } from './PaymentsDto'; export class FullTransactionDto { @ApiProperty() diff --git a/apps/api/src/domain/payments/dtos/GetMembershipFeesDTO.ts b/apps/api/src/domain/payments/dtos/GetMembershipFeesDTO.ts index 40bb9d5cb..7ef4ef260 100644 --- a/apps/api/src/domain/payments/dtos/GetMembershipFeesDTO.ts +++ b/apps/api/src/domain/payments/dtos/GetMembershipFeesDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsObject, IsArray } from 'class-validator'; -import { MembershipFeeDto, MemberPaymentDto } from './PaymentsDto'; +import { IsArray, IsObject } from 'class-validator'; +import { MemberPaymentDto, MembershipFeeDto } from './PaymentsDto'; export class GetMembershipFeesResultDTO { @ApiProperty({ type: MembershipFeeDto, nullable: true }) diff --git a/apps/api/src/domain/payments/dtos/GetWalletDTO.ts b/apps/api/src/domain/payments/dtos/GetWalletDTO.ts index bf6b18d9e..1d66e7b27 100644 --- a/apps/api/src/domain/payments/dtos/GetWalletDTO.ts +++ b/apps/api/src/domain/payments/dtos/GetWalletDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsObject, IsArray } from 'class-validator'; -import { WalletDto, TransactionDto } from './PaymentsDto'; +import { IsArray, IsObject } from 'class-validator'; +import { TransactionDto, WalletDto } from './PaymentsDto'; export class GetWalletResultDTO { @ApiProperty({ type: WalletDto }) diff --git a/apps/api/src/domain/payments/dtos/PaymentDTO.ts b/apps/api/src/domain/payments/dtos/PaymentDTO.ts index 839e98aff..153bcad3a 100644 --- a/apps/api/src/domain/payments/dtos/PaymentDTO.ts +++ b/apps/api/src/domain/payments/dtos/PaymentDTO.ts @@ -1,8 +1,8 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsEnum, IsOptional, IsDate } from 'class-validator'; -import { PaymentType } from './PaymentType'; +import { IsDate, IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; import { PayerType } from './PayerType'; import { PaymentStatus } from './PaymentStatus'; +import { PaymentType } from './PaymentType'; export class PaymentDTO { @ApiProperty() diff --git a/apps/api/src/domain/payments/dtos/PaymentsDto.ts b/apps/api/src/domain/payments/dtos/PaymentsDto.ts index 4c63d6bdd..87f840b70 100644 --- a/apps/api/src/domain/payments/dtos/PaymentsDto.ts +++ b/apps/api/src/domain/payments/dtos/PaymentsDto.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsNumber, IsEnum, IsOptional, IsDate, IsBoolean } from 'class-validator'; +import { IsBoolean, IsDate, IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString } from 'class-validator'; export enum PaymentType { SPONSORSHIP = 'sponsorship', diff --git a/apps/api/src/domain/payments/dtos/ProcessWalletTransactionDTO.ts b/apps/api/src/domain/payments/dtos/ProcessWalletTransactionDTO.ts index 0a0490cab..7b1ba1309 100644 --- a/apps/api/src/domain/payments/dtos/ProcessWalletTransactionDTO.ts +++ b/apps/api/src/domain/payments/dtos/ProcessWalletTransactionDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; import { IsObject } from 'class-validator'; -import { WalletDto, TransactionDto } from './PaymentsDto'; +import { TransactionDto, WalletDto } from './PaymentsDto'; export class ProcessWalletTransactionResultDTO { @ApiProperty({ type: WalletDto }) diff --git a/apps/api/src/domain/payments/dtos/UpdatePaymentStatusInputDTO.ts b/apps/api/src/domain/payments/dtos/UpdatePaymentStatusInputDTO.ts index 5b80271c7..099157b36 100644 --- a/apps/api/src/domain/payments/dtos/UpdatePaymentStatusInputDTO.ts +++ b/apps/api/src/domain/payments/dtos/UpdatePaymentStatusInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum } from 'class-validator'; +import { IsEnum, IsString } from 'class-validator'; import { PaymentStatus } from './PaymentStatus'; export class UpdatePaymentStatusInputDTO { diff --git a/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts b/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts index 0f8f8dcdb..7956cf630 100644 --- a/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts +++ b/apps/api/src/domain/payments/presenters/CreatePaymentPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { CreatePaymentResult } from '@core/payments/application/use-cases/CreatePaymentUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import type { CreatePaymentOutput } from '../dtos/PaymentsDto'; export class CreatePaymentPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts b/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts index 1271e9ed6..6dd5d5445 100644 --- a/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts +++ b/apps/api/src/domain/payments/presenters/GetPaymentsPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { GetPaymentsResult } from '@core/payments/application/use-cases/GetPaymentsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import type { GetPaymentsOutput } from '../dtos/PaymentsDto'; export class GetPaymentsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts b/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts index 55d74beb7..2eaace821 100644 --- a/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts +++ b/apps/api/src/domain/payments/presenters/UpdatePaymentStatusPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application'; import type { UpdatePaymentStatusResult } from '@core/payments/application/use-cases/UpdatePaymentStatusUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application'; import type { UpdatePaymentStatusOutput } from '../dtos/PaymentsDto'; export class UpdatePaymentStatusPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/policy/FeatureAvailabilityGuard.ts b/apps/api/src/domain/policy/FeatureAvailabilityGuard.ts index 56f5374d7..398299fa6 100644 --- a/apps/api/src/domain/policy/FeatureAvailabilityGuard.ts +++ b/apps/api/src/domain/policy/FeatureAvailabilityGuard.ts @@ -1,12 +1,12 @@ import { - CanActivate, - ExecutionContext, - Injectable, - NotFoundException, - ServiceUnavailableException, + CanActivate, + ExecutionContext, + Injectable, + NotFoundException, + ServiceUnavailableException, } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; -import { PolicyService, ActionType, FeatureState } from './PolicyService'; +import { ActionType, FeatureState, PolicyService } from './PolicyService'; import { FEATURE_AVAILABILITY_METADATA_KEY, FeatureAvailabilityMetadata } from './RequireCapability'; type Evaluation = { allow: true } | { allow: false; reason: 'maintenance' | FeatureState | 'not_configured' }; diff --git a/apps/api/src/domain/policy/PolicyController.test.ts b/apps/api/src/domain/policy/PolicyController.test.ts index 72f123c93..b12a2fcdd 100644 --- a/apps/api/src/domain/policy/PolicyController.test.ts +++ b/apps/api/src/domain/policy/PolicyController.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, vi } from 'vitest'; +import { describe, expect, it, vi } from 'vitest'; import { PolicyController } from './PolicyController'; import { PolicySnapshot } from './PolicyService'; diff --git a/apps/api/src/domain/policy/PolicyController.ts b/apps/api/src/domain/policy/PolicyController.ts index 797910519..ad2508c47 100644 --- a/apps/api/src/domain/policy/PolicyController.ts +++ b/apps/api/src/domain/policy/PolicyController.ts @@ -1,6 +1,6 @@ import { Controller, Get } from '@nestjs/common'; -import { Public } from '../auth/Public'; import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; +import { Public } from '../auth/Public'; import { PolicyService, PolicySnapshot } from './PolicyService'; @ApiTags('policy') diff --git a/apps/api/src/domain/policy/PolicyModule.ts b/apps/api/src/domain/policy/PolicyModule.ts index 034e07a9c..125e6cf95 100644 --- a/apps/api/src/domain/policy/PolicyModule.ts +++ b/apps/api/src/domain/policy/PolicyModule.ts @@ -1,7 +1,7 @@ import { Module } from '@nestjs/common'; +import { FeatureAvailabilityGuard } from './FeatureAvailabilityGuard'; import { PolicyController } from './PolicyController'; import { PolicyService } from './PolicyService'; -import { FeatureAvailabilityGuard } from './FeatureAvailabilityGuard'; @Module({ controllers: [PolicyController], diff --git a/apps/api/src/domain/policy/PolicyService.test.ts b/apps/api/src/domain/policy/PolicyService.test.ts index 3110d6f82..da55b5d4e 100644 --- a/apps/api/src/domain/policy/PolicyService.test.ts +++ b/apps/api/src/domain/policy/PolicyService.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach, vi, afterEach } from 'vitest'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { PolicyService } from './PolicyService'; describe('PolicyService', () => { diff --git a/apps/api/src/domain/protests/ProtestsController.test.ts b/apps/api/src/domain/protests/ProtestsController.test.ts index 53b534db3..866499389 100644 --- a/apps/api/src/domain/protests/ProtestsController.test.ts +++ b/apps/api/src/domain/protests/ProtestsController.test.ts @@ -1,10 +1,10 @@ +import { ForbiddenException, InternalServerErrorException, NotFoundException } from '@nestjs/common'; import { Test, TestingModule } from '@nestjs/testing'; import { vi, type MockedFunction } from 'vitest'; -import { ForbiddenException, InternalServerErrorException, NotFoundException } from '@nestjs/common'; -import { ProtestsController } from './ProtestsController'; -import { ProtestsService } from './ProtestsService'; import { ReviewProtestCommandDTO } from '../race/dtos/ReviewProtestCommandDTO'; import type { ReviewProtestResponseDTO } from './presenters/ReviewProtestPresenter'; +import { ProtestsController } from './ProtestsController'; +import { ProtestsService } from './ProtestsService'; describe('ProtestsController', () => { let controller: ProtestsController; diff --git a/apps/api/src/domain/protests/ProtestsController.ts b/apps/api/src/domain/protests/ProtestsController.ts index e330a7ef6..cf5b6dd9d 100644 --- a/apps/api/src/domain/protests/ProtestsController.ts +++ b/apps/api/src/domain/protests/ProtestsController.ts @@ -1,8 +1,8 @@ import { Body, Controller, ForbiddenException, HttpCode, HttpStatus, Inject, InternalServerErrorException, NotFoundException, Param, Post, Req, UnauthorizedException } from '@nestjs/common'; import { ApiOperation, ApiParam, ApiResponse, ApiTags } from '@nestjs/swagger'; -import { ProtestsService } from './ProtestsService'; import { ReviewProtestCommandDTO } from '../race/dtos/ReviewProtestCommandDTO'; import type { ReviewProtestResponseDTO } from './presenters/ReviewProtestPresenter'; +import { ProtestsService } from './ProtestsService'; type AuthenticatedRequest = { user?: { userId: string }; diff --git a/apps/api/src/domain/protests/ProtestsModule.test.ts b/apps/api/src/domain/protests/ProtestsModule.test.ts index 0a38f240f..ff7a8165a 100644 --- a/apps/api/src/domain/protests/ProtestsModule.test.ts +++ b/apps/api/src/domain/protests/ProtestsModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { ProtestsModule } from './ProtestsModule'; import { ProtestsController } from './ProtestsController'; +import { ProtestsModule } from './ProtestsModule'; describe('ProtestsModule', () => { let module: TestingModule; diff --git a/apps/api/src/domain/protests/ProtestsModule.ts b/apps/api/src/domain/protests/ProtestsModule.ts index de3e55051..f56330196 100644 --- a/apps/api/src/domain/protests/ProtestsModule.ts +++ b/apps/api/src/domain/protests/ProtestsModule.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; import { ProtestsController } from './ProtestsController'; -import { ProtestsService } from './ProtestsService'; import { ProtestsProviders } from './ProtestsProviders'; +import { ProtestsService } from './ProtestsService'; @Module({ imports: [RacingPersistenceModule], diff --git a/apps/api/src/domain/protests/ProtestsService.test.ts b/apps/api/src/domain/protests/ProtestsService.test.ts index 6062787e2..b933c6508 100644 --- a/apps/api/src/domain/protests/ProtestsService.test.ts +++ b/apps/api/src/domain/protests/ProtestsService.test.ts @@ -1,11 +1,11 @@ -import { describe, it, expect, beforeEach, vi, type MockedFunction } from 'vitest'; -import { Result } from '@core/shared/domain/Result'; -import type { Logger } from '@core/shared/application/Logger'; import type { - ReviewProtestUseCase, - ReviewProtestApplicationError, - ReviewProtestResult, + ReviewProtestApplicationError, + ReviewProtestResult, + ReviewProtestUseCase, } from '@core/racing/application/use-cases/ReviewProtestUseCase'; +import type { Logger } from '@core/shared/application/Logger'; +import { Result } from '@core/shared/domain/Result'; +import { beforeEach, describe, expect, it, vi, type MockedFunction } from 'vitest'; import { ProtestsService } from './ProtestsService'; import { ReviewProtestPresenter, type ReviewProtestResponseDTO } from './presenters/ReviewProtestPresenter'; diff --git a/apps/api/src/domain/protests/ProtestsService.ts b/apps/api/src/domain/protests/ProtestsService.ts index 453a5bda5..e94b410bd 100644 --- a/apps/api/src/domain/protests/ProtestsService.ts +++ b/apps/api/src/domain/protests/ProtestsService.ts @@ -1,5 +1,5 @@ -import { Inject, Injectable } from '@nestjs/common'; import type { Logger } from '@core/shared/application/Logger'; +import { Inject, Injectable } from '@nestjs/common'; // Use cases import { ReviewProtestUseCase } from '@core/racing/application/use-cases/ReviewProtestUseCase'; diff --git a/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts b/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts index 8f216950c..a4ca55963 100644 --- a/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts +++ b/apps/api/src/domain/protests/presenters/ReviewProtestPresenter.ts @@ -1,5 +1,5 @@ +import type { ReviewProtestApplicationError, ReviewProtestResult } from '@core/racing/application/use-cases/ReviewProtestUseCase'; import type { UseCaseOutputPort } from '@core/shared/application'; -import type { ReviewProtestResult, ReviewProtestApplicationError } from '@core/racing/application/use-cases/ReviewProtestUseCase'; export interface ReviewProtestResponseDTO { success: boolean; diff --git a/apps/api/src/domain/race/RaceController.test.ts b/apps/api/src/domain/race/RaceController.test.ts index e9916d9e9..95cc66452 100644 --- a/apps/api/src/domain/race/RaceController.test.ts +++ b/apps/api/src/domain/race/RaceController.test.ts @@ -3,14 +3,14 @@ import 'reflect-metadata'; import { Reflector } from '@nestjs/core'; import { Test, TestingModule } from '@nestjs/testing'; import request from 'supertest'; -import { RaceController } from './RaceController'; -import { RaceService } from './RaceService'; -import { vi, Mocked } from 'vitest'; +import { Mocked, vi } from 'vitest'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; +import { RaceController } from './RaceController'; +import { RaceService } from './RaceService'; describe('RaceController', () => { let controller: RaceController; diff --git a/apps/api/src/domain/race/RaceController.ts b/apps/api/src/domain/race/RaceController.ts index ba568b23d..bd7291fdb 100644 --- a/apps/api/src/domain/race/RaceController.ts +++ b/apps/api/src/domain/race/RaceController.ts @@ -1,24 +1,24 @@ -import { Body, Controller, Get, HttpCode, HttpStatus, InternalServerErrorException, Param, Post, Query, Inject } from '@nestjs/common'; +import { Body, Controller, Get, HttpCode, HttpStatus, Inject, InternalServerErrorException, Param, Post, Query } from '@nestjs/common'; import { ApiOperation, ApiParam, ApiQuery, ApiResponse, ApiTags } from '@nestjs/swagger'; import { Public } from '../auth/Public'; import { RaceService } from './RaceService'; import { AllRacesPageDTO } from './dtos/AllRacesPageDTO'; -import { RaceStatsDTO } from './dtos/RaceStatsDTO'; -import { RaceDetailDTO } from './dtos/RaceDetailDTO'; -import { RacesPageDataDTO } from './dtos/RacesPageDataDTO'; -import { RaceResultsDetailDTO } from './dtos/RaceResultsDetailDTO'; -import { RaceWithSOFDTO } from './dtos/RaceWithSOFDTO'; -import { RaceProtestsDTO } from './dtos/RaceProtestsDTO'; -import { RacePenaltiesDTO } from './dtos/RacePenaltiesDTO'; -import { RegisterForRaceParamsDTO } from './dtos/RegisterForRaceParamsDTO'; -import { WithdrawFromRaceParamsDTO } from './dtos/WithdrawFromRaceParamsDTO'; +import { ApplyPenaltyCommandDTO } from './dtos/ApplyPenaltyCommandDTO'; +import { FileProtestCommandDTO } from './dtos/FileProtestCommandDTO'; import { ImportRaceResultsDTO } from './dtos/ImportRaceResultsDTO'; import { ImportRaceResultsSummaryDTO } from './dtos/ImportRaceResultsSummaryDTO'; -import { FileProtestCommandDTO } from './dtos/FileProtestCommandDTO'; -import { QuickPenaltyCommandDTO } from './dtos/QuickPenaltyCommandDTO'; -import { ApplyPenaltyCommandDTO } from './dtos/ApplyPenaltyCommandDTO'; -import { RequestProtestDefenseCommandDTO } from './dtos/RequestProtestDefenseCommandDTO'; import { PenaltyTypesReferenceDTO } from './dtos/PenaltyTypesReferenceDTO'; +import { QuickPenaltyCommandDTO } from './dtos/QuickPenaltyCommandDTO'; +import { RaceDetailDTO } from './dtos/RaceDetailDTO'; +import { RacePenaltiesDTO } from './dtos/RacePenaltiesDTO'; +import { RaceProtestsDTO } from './dtos/RaceProtestsDTO'; +import { RaceResultsDetailDTO } from './dtos/RaceResultsDetailDTO'; +import { RaceStatsDTO } from './dtos/RaceStatsDTO'; +import { RaceWithSOFDTO } from './dtos/RaceWithSOFDTO'; +import { RacesPageDataDTO } from './dtos/RacesPageDataDTO'; +import { RegisterForRaceParamsDTO } from './dtos/RegisterForRaceParamsDTO'; +import { RequestProtestDefenseCommandDTO } from './dtos/RequestProtestDefenseCommandDTO'; +import { WithdrawFromRaceParamsDTO } from './dtos/WithdrawFromRaceParamsDTO'; @ApiTags('races') @Controller('races') diff --git a/apps/api/src/domain/race/RaceModule.test.ts b/apps/api/src/domain/race/RaceModule.test.ts index 979ac27a2..eb5c920c8 100644 --- a/apps/api/src/domain/race/RaceModule.test.ts +++ b/apps/api/src/domain/race/RaceModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { RaceModule } from './RaceModule'; import { RaceController } from './RaceController'; +import { RaceModule } from './RaceModule'; import { RaceService } from './RaceService'; describe('RaceModule', () => { diff --git a/apps/api/src/domain/race/RaceModule.ts b/apps/api/src/domain/race/RaceModule.ts index e6a5e0ba2..14425ef7d 100644 --- a/apps/api/src/domain/race/RaceModule.ts +++ b/apps/api/src/domain/race/RaceModule.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; -import { RaceService } from './RaceService'; import { RaceController } from './RaceController'; import { RaceProviders } from './RaceProviders'; +import { RaceService } from './RaceService'; @Module({ imports: [RacingPersistenceModule], diff --git a/apps/api/src/domain/race/RaceProviders.ts b/apps/api/src/domain/race/RaceProviders.ts index fd11de12f..19c04e342 100644 --- a/apps/api/src/domain/race/RaceProviders.ts +++ b/apps/api/src/domain/race/RaceProviders.ts @@ -55,29 +55,29 @@ import { RacesPageDataPresenter } from './presenters/RacesPageDataPresenter'; import { RaceWithSOFPresenter } from './presenters/RaceWithSOFPresenter'; import { - RACE_REPOSITORY_TOKEN, - LEAGUE_REPOSITORY_TOKEN, - DRIVER_REPOSITORY_TOKEN, - RACE_REGISTRATION_REPOSITORY_TOKEN, - RESULT_REPOSITORY_TOKEN, - LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - PENALTY_REPOSITORY_TOKEN, - PROTEST_REPOSITORY_TOKEN, - STANDING_REPOSITORY_TOKEN, - DRIVER_RATING_PROVIDER_TOKEN, - IMAGE_SERVICE_TOKEN, - LOGGER_TOKEN, - GET_ALL_RACES_PRESENTER_TOKEN, - GET_TOTAL_RACES_PRESENTER_TOKEN, - IMPORT_RACE_RESULTS_API_PRESENTER_TOKEN, - RACE_DETAIL_PRESENTER_TOKEN, - RACES_PAGE_DATA_PRESENTER_TOKEN, - ALL_RACES_PAGE_DATA_PRESENTER_TOKEN, - RACE_RESULTS_DETAIL_PRESENTER_TOKEN, - RACE_WITH_SOF_PRESENTER_TOKEN, - RACE_PROTESTS_PRESENTER_TOKEN, - RACE_PENALTIES_PRESENTER_TOKEN, - COMMAND_RESULT_PRESENTER_TOKEN, + ALL_RACES_PAGE_DATA_PRESENTER_TOKEN, + COMMAND_RESULT_PRESENTER_TOKEN, + DRIVER_RATING_PROVIDER_TOKEN, + DRIVER_REPOSITORY_TOKEN, + GET_ALL_RACES_PRESENTER_TOKEN, + GET_TOTAL_RACES_PRESENTER_TOKEN, + IMAGE_SERVICE_TOKEN, + IMPORT_RACE_RESULTS_API_PRESENTER_TOKEN, + LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, + LEAGUE_REPOSITORY_TOKEN, + LOGGER_TOKEN, + PENALTY_REPOSITORY_TOKEN, + PROTEST_REPOSITORY_TOKEN, + RACE_DETAIL_PRESENTER_TOKEN, + RACE_PENALTIES_PRESENTER_TOKEN, + RACE_PROTESTS_PRESENTER_TOKEN, + RACE_REGISTRATION_REPOSITORY_TOKEN, + RACE_REPOSITORY_TOKEN, + RACE_RESULTS_DETAIL_PRESENTER_TOKEN, + RACE_WITH_SOF_PRESENTER_TOKEN, + RACES_PAGE_DATA_PRESENTER_TOKEN, + RESULT_REPOSITORY_TOKEN, + STANDING_REPOSITORY_TOKEN, } from './RaceTokens'; export * from './RaceTokens'; diff --git a/apps/api/src/domain/race/RaceService.test.ts b/apps/api/src/domain/race/RaceService.test.ts index f0047950f..0c0c5f9c8 100644 --- a/apps/api/src/domain/race/RaceService.test.ts +++ b/apps/api/src/domain/race/RaceService.test.ts @@ -1,6 +1,6 @@ +import { Result } from '@core/shared/domain/Result'; import { describe, expect, it, vi, type Mock } from 'vitest'; import { RaceService } from './RaceService'; -import { Result } from '@core/shared/domain/Result'; describe('RaceService', () => { it('invokes each use case and returns the corresponding presenter', async () => { diff --git a/apps/api/src/domain/race/RaceService.ts b/apps/api/src/domain/race/RaceService.ts index bff9a9087..5936c504b 100644 --- a/apps/api/src/domain/race/RaceService.ts +++ b/apps/api/src/domain/race/RaceService.ts @@ -47,34 +47,34 @@ import { RaceWithSOFPresenter } from './presenters/RaceWithSOFPresenter'; // Command DTOs import { ApplyPenaltyCommandDTO } from './dtos/ApplyPenaltyCommandDTO'; import { FileProtestCommandDTO } from './dtos/FileProtestCommandDTO'; +import { PenaltyTypesReferenceDTO } from './dtos/PenaltyTypesReferenceDTO'; import { QuickPenaltyCommandDTO } from './dtos/QuickPenaltyCommandDTO'; import { RequestProtestDefenseCommandDTO } from './dtos/RequestProtestDefenseCommandDTO'; import { ReviewProtestCommandDTO } from './dtos/ReviewProtestCommandDTO'; -import { PenaltyTypesReferenceDTO } from './dtos/PenaltyTypesReferenceDTO'; // Tokens import { ApplyPenaltyUseCase } from '@core/racing/application/use-cases/ApplyPenaltyUseCase'; import { - ALL_RACES_PAGE_DATA_PRESENTER_TOKEN, - COMMAND_RESULT_PRESENTER_TOKEN, - GET_ALL_RACES_PRESENTER_TOKEN, - GET_TOTAL_RACES_PRESENTER_TOKEN, - IMPORT_RACE_RESULTS_API_PRESENTER_TOKEN, - LOGGER_TOKEN, - RACE_DETAIL_PRESENTER_TOKEN, - RACE_PENALTIES_PRESENTER_TOKEN, - RACE_PROTESTS_PRESENTER_TOKEN, - RACE_RESULTS_DETAIL_PRESENTER_TOKEN, - RACE_WITH_SOF_PRESENTER_TOKEN, - RACES_PAGE_DATA_PRESENTER_TOKEN + ALL_RACES_PAGE_DATA_PRESENTER_TOKEN, + COMMAND_RESULT_PRESENTER_TOKEN, + GET_ALL_RACES_PRESENTER_TOKEN, + GET_TOTAL_RACES_PRESENTER_TOKEN, + IMPORT_RACE_RESULTS_API_PRESENTER_TOKEN, + LOGGER_TOKEN, + RACE_DETAIL_PRESENTER_TOKEN, + RACE_PENALTIES_PRESENTER_TOKEN, + RACE_PROTESTS_PRESENTER_TOKEN, + RACE_RESULTS_DETAIL_PRESENTER_TOKEN, + RACE_WITH_SOF_PRESENTER_TOKEN, + RACES_PAGE_DATA_PRESENTER_TOKEN } from './RaceTokens'; -import { - PENALTY_TYPE_VALUES, - getPenaltyValueKind, - type PenaltyTypeValue, -} from '@core/racing/domain/entities/penalty/PenaltyType'; import { penaltyTypeRequiresValue } from '@core/racing/domain/entities/penalty/Penalty'; +import { + getPenaltyValueKind, + PENALTY_TYPE_VALUES, + type PenaltyTypeValue, +} from '@core/racing/domain/entities/penalty/PenaltyType'; @Injectable() export class RaceService { diff --git a/apps/api/src/domain/race/dtos/ApplyPenaltyCommandDTO.ts b/apps/api/src/domain/race/dtos/ApplyPenaltyCommandDTO.ts index 43833356e..ff85afd63 100644 --- a/apps/api/src/domain/race/dtos/ApplyPenaltyCommandDTO.ts +++ b/apps/api/src/domain/race/dtos/ApplyPenaltyCommandDTO.ts @@ -1,6 +1,6 @@ -import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsOptional, IsNumber, IsEnum } from 'class-validator'; import { PENALTY_TYPE_VALUES } from '@core/racing/domain/entities/penalty/PenaltyType'; +import { ApiProperty } from '@nestjs/swagger'; +import { IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString } from 'class-validator'; export class ApplyPenaltyCommandDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/DashboardDriverSummaryDTO.ts b/apps/api/src/domain/race/dtos/DashboardDriverSummaryDTO.ts index d867272db..34f241c84 100644 --- a/apps/api/src/domain/race/dtos/DashboardDriverSummaryDTO.ts +++ b/apps/api/src/domain/race/dtos/DashboardDriverSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsOptional } from 'class-validator'; +import { IsNumber, IsOptional, IsString } from 'class-validator'; export class DashboardDriverSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/DashboardFeedItemSummaryDTO.ts b/apps/api/src/domain/race/dtos/DashboardFeedItemSummaryDTO.ts index 2df53f238..68288d66d 100644 --- a/apps/api/src/domain/race/dtos/DashboardFeedItemSummaryDTO.ts +++ b/apps/api/src/domain/race/dtos/DashboardFeedItemSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional } from 'class-validator'; +import { IsOptional, IsString } from 'class-validator'; export type DashboardFeedItemType = | 'friend-joined-league' diff --git a/apps/api/src/domain/race/dtos/DashboardLeagueStandingSummaryDTO.ts b/apps/api/src/domain/race/dtos/DashboardLeagueStandingSummaryDTO.ts index 99966f01c..8738b1a04 100644 --- a/apps/api/src/domain/race/dtos/DashboardLeagueStandingSummaryDTO.ts +++ b/apps/api/src/domain/race/dtos/DashboardLeagueStandingSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class DashboardLeagueStandingSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/DashboardOverviewDTO.ts b/apps/api/src/domain/race/dtos/DashboardOverviewDTO.ts index 162d8ccb6..3f9aeb51e 100644 --- a/apps/api/src/domain/race/dtos/DashboardOverviewDTO.ts +++ b/apps/api/src/domain/race/dtos/DashboardOverviewDTO.ts @@ -1,11 +1,11 @@ import { ApiProperty } from '@nestjs/swagger'; import { IsNumber } from 'class-validator'; import { DashboardDriverSummaryDTO } from './DashboardDriverSummaryDTO'; -import { DashboardRaceSummaryDTO } from './DashboardRaceSummaryDTO'; -import { DashboardRecentResultDTO } from './DashboardRecentResultDTO'; -import { DashboardLeagueStandingSummaryDTO } from './DashboardLeagueStandingSummaryDTO'; import { DashboardFeedSummaryDTO } from './DashboardFeedSummaryDTO'; import { DashboardFriendSummaryDTO } from './DashboardFriendSummaryDTO'; +import { DashboardLeagueStandingSummaryDTO } from './DashboardLeagueStandingSummaryDTO'; +import { DashboardRaceSummaryDTO } from './DashboardRaceSummaryDTO'; +import { DashboardRecentResultDTO } from './DashboardRecentResultDTO'; export class DashboardOverviewDTO { @ApiProperty({ nullable: true }) diff --git a/apps/api/src/domain/race/dtos/DashboardRaceSummaryDTO.ts b/apps/api/src/domain/race/dtos/DashboardRaceSummaryDTO.ts index 4c870af7c..ed4ff146d 100644 --- a/apps/api/src/domain/race/dtos/DashboardRaceSummaryDTO.ts +++ b/apps/api/src/domain/race/dtos/DashboardRaceSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class DashboardRaceSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/DashboardRecentResultDTO.ts b/apps/api/src/domain/race/dtos/DashboardRecentResultDTO.ts index 5cec87cd8..e92a4adaa 100644 --- a/apps/api/src/domain/race/dtos/DashboardRecentResultDTO.ts +++ b/apps/api/src/domain/race/dtos/DashboardRecentResultDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class DashboardRecentResultDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/DriverSummaryDTO.ts b/apps/api/src/domain/race/dtos/DriverSummaryDTO.ts index 30481134b..71e991885 100644 --- a/apps/api/src/domain/race/dtos/DriverSummaryDTO.ts +++ b/apps/api/src/domain/race/dtos/DriverSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsOptional } from 'class-validator'; +import { IsNumber, IsOptional, IsString } from 'class-validator'; export class DriverSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/FileProtestCommandDTO.ts b/apps/api/src/domain/race/dtos/FileProtestCommandDTO.ts index 153cf8a56..2b80d87fc 100644 --- a/apps/api/src/domain/race/dtos/FileProtestCommandDTO.ts +++ b/apps/api/src/domain/race/dtos/FileProtestCommandDTO.ts @@ -1,6 +1,6 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsNotEmpty, IsOptional, IsString, IsUrl, ValidateNested } from 'class-validator'; import { Type } from 'class-transformer'; +import { IsNotEmpty, IsOptional, IsString, IsUrl, ValidateNested } from 'class-validator'; import { ProtestIncidentDTO } from './ProtestIncidentDTO'; export class FileProtestCommandDTO { diff --git a/apps/api/src/domain/race/dtos/GetRaceDetailParamsDTO.ts b/apps/api/src/domain/race/dtos/GetRaceDetailParamsDTO.ts index 2076d38fc..ab5841f56 100644 --- a/apps/api/src/domain/race/dtos/GetRaceDetailParamsDTO.ts +++ b/apps/api/src/domain/race/dtos/GetRaceDetailParamsDTO.ts @@ -1,5 +1,5 @@ -import { ApiPropertyOptional, ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsOptional } from 'class-validator'; +import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; export class GetRaceDetailParamsDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/ImportRaceResultsDTO.ts b/apps/api/src/domain/race/dtos/ImportRaceResultsDTO.ts index 6f5a62a2b..20514291b 100644 --- a/apps/api/src/domain/race/dtos/ImportRaceResultsDTO.ts +++ b/apps/api/src/domain/race/dtos/ImportRaceResultsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class ImportRaceResultsDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/ImportRaceResultsSummaryDTO.ts b/apps/api/src/domain/race/dtos/ImportRaceResultsSummaryDTO.ts index c59758b59..0190a1d94 100644 --- a/apps/api/src/domain/race/dtos/ImportRaceResultsSummaryDTO.ts +++ b/apps/api/src/domain/race/dtos/ImportRaceResultsSummaryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsBoolean, IsString, IsNumber } from 'class-validator'; +import { IsBoolean, IsNumber, IsString } from 'class-validator'; export class ImportRaceResultsSummaryDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/PenaltyTypesReferenceDTO.ts b/apps/api/src/domain/race/dtos/PenaltyTypesReferenceDTO.ts index 76dc21f64..919a7c63c 100644 --- a/apps/api/src/domain/race/dtos/PenaltyTypesReferenceDTO.ts +++ b/apps/api/src/domain/race/dtos/PenaltyTypesReferenceDTO.ts @@ -1,9 +1,9 @@ +import { + PENALTY_TYPE_VALUES, + type PenaltyTypeValue, +} from '@core/racing/domain/entities/penalty/PenaltyType'; import { ApiProperty } from '@nestjs/swagger'; import { IsBoolean, IsEnum, IsString } from 'class-validator'; -import { - PENALTY_TYPE_VALUES, - type PenaltyTypeValue, -} from '@core/racing/domain/entities/penalty/PenaltyType'; export type PenaltyValueKindDTO = 'seconds' | 'grid_positions' | 'points' | 'races' | 'none'; diff --git a/apps/api/src/domain/race/dtos/QuickPenaltyCommandDTO.ts b/apps/api/src/domain/race/dtos/QuickPenaltyCommandDTO.ts index fbac2c5d1..ff03168ef 100644 --- a/apps/api/src/domain/race/dtos/QuickPenaltyCommandDTO.ts +++ b/apps/api/src/domain/race/dtos/QuickPenaltyCommandDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsOptional, IsEnum } from 'class-validator'; +import { IsEnum, IsNotEmpty, IsOptional, IsString } from 'class-validator'; export class QuickPenaltyCommandDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RaceActionParamsDTO.ts b/apps/api/src/domain/race/dtos/RaceActionParamsDTO.ts index 5bcbc3998..6c27ce825 100644 --- a/apps/api/src/domain/race/dtos/RaceActionParamsDTO.ts +++ b/apps/api/src/domain/race/dtos/RaceActionParamsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class RaceActionParamsDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RaceDetailDTO.ts b/apps/api/src/domain/race/dtos/RaceDetailDTO.ts index d73f99367..4de8c7dd2 100644 --- a/apps/api/src/domain/race/dtos/RaceDetailDTO.ts +++ b/apps/api/src/domain/race/dtos/RaceDetailDTO.ts @@ -1,8 +1,8 @@ import { ApiProperty } from '@nestjs/swagger'; import { IsOptional, IsString } from 'class-validator'; -import { RaceDetailRaceDTO } from './RaceDetailRaceDTO'; -import { RaceDetailLeagueDTO } from './RaceDetailLeagueDTO'; import { RaceDetailEntryDTO } from './RaceDetailEntryDTO'; +import { RaceDetailLeagueDTO } from './RaceDetailLeagueDTO'; +import { RaceDetailRaceDTO } from './RaceDetailRaceDTO'; import { RaceDetailRegistrationDTO } from './RaceDetailRegistrationDTO'; import { RaceDetailUserResultDTO } from './RaceDetailUserResultDTO'; diff --git a/apps/api/src/domain/race/dtos/RaceDetailEntryDTO.ts b/apps/api/src/domain/race/dtos/RaceDetailEntryDTO.ts index 74cca3fcb..d5b25a7d5 100644 --- a/apps/api/src/domain/race/dtos/RaceDetailEntryDTO.ts +++ b/apps/api/src/domain/race/dtos/RaceDetailEntryDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class RaceDetailEntryDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RaceDetailRaceDTO.ts b/apps/api/src/domain/race/dtos/RaceDetailRaceDTO.ts index 6d7dd710c..43945800b 100644 --- a/apps/api/src/domain/race/dtos/RaceDetailRaceDTO.ts +++ b/apps/api/src/domain/race/dtos/RaceDetailRaceDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional, IsNumber } from 'class-validator'; +import { IsNumber, IsOptional, IsString } from 'class-validator'; export class RaceDetailRaceDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RaceDetailUserResultDTO.ts b/apps/api/src/domain/race/dtos/RaceDetailUserResultDTO.ts index d8b5419a3..813f70580 100644 --- a/apps/api/src/domain/race/dtos/RaceDetailUserResultDTO.ts +++ b/apps/api/src/domain/race/dtos/RaceDetailUserResultDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsNumber, IsBoolean } from 'class-validator'; +import { IsBoolean, IsNumber } from 'class-validator'; export class RaceDetailUserResultDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RacePenaltyDTO.ts b/apps/api/src/domain/race/dtos/RacePenaltyDTO.ts index ccb34c680..1e2798148 100644 --- a/apps/api/src/domain/race/dtos/RacePenaltyDTO.ts +++ b/apps/api/src/domain/race/dtos/RacePenaltyDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class RacePenaltyDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RaceResultDTO.ts b/apps/api/src/domain/race/dtos/RaceResultDTO.ts index 08a671bd7..54db0e72c 100644 --- a/apps/api/src/domain/race/dtos/RaceResultDTO.ts +++ b/apps/api/src/domain/race/dtos/RaceResultDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber, IsBoolean } from 'class-validator'; +import { IsBoolean, IsNumber, IsString } from 'class-validator'; export class RaceResultDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RacesPageDataRaceDTO.ts b/apps/api/src/domain/race/dtos/RacesPageDataRaceDTO.ts index 62fe929bd..22eda8e77 100644 --- a/apps/api/src/domain/race/dtos/RacesPageDataRaceDTO.ts +++ b/apps/api/src/domain/race/dtos/RacesPageDataRaceDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsBoolean } from 'class-validator'; +import { IsBoolean, IsString } from 'class-validator'; export class RacesPageDataRaceDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RegisterForRaceParamsDTO.ts b/apps/api/src/domain/race/dtos/RegisterForRaceParamsDTO.ts index ea96d6967..df4aa056e 100644 --- a/apps/api/src/domain/race/dtos/RegisterForRaceParamsDTO.ts +++ b/apps/api/src/domain/race/dtos/RegisterForRaceParamsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class RegisterForRaceParamsDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/RequestProtestDefenseCommandDTO.ts b/apps/api/src/domain/race/dtos/RequestProtestDefenseCommandDTO.ts index d0f4e1cef..4aa05097f 100644 --- a/apps/api/src/domain/race/dtos/RequestProtestDefenseCommandDTO.ts +++ b/apps/api/src/domain/race/dtos/RequestProtestDefenseCommandDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class RequestProtestDefenseCommandDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/ReviewProtestCommandDTO.ts b/apps/api/src/domain/race/dtos/ReviewProtestCommandDTO.ts index 00ada1504..6f253aee6 100644 --- a/apps/api/src/domain/race/dtos/ReviewProtestCommandDTO.ts +++ b/apps/api/src/domain/race/dtos/ReviewProtestCommandDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsEnum } from 'class-validator'; +import { IsEnum, IsNotEmpty, IsString } from 'class-validator'; export class ReviewProtestCommandDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/dtos/WithdrawFromRaceParamsDTO.ts b/apps/api/src/domain/race/dtos/WithdrawFromRaceParamsDTO.ts index 35c2edd31..1f17ac77c 100644 --- a/apps/api/src/domain/race/dtos/WithdrawFromRaceParamsDTO.ts +++ b/apps/api/src/domain/race/dtos/WithdrawFromRaceParamsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class WithdrawFromRaceParamsDTO { @ApiProperty() diff --git a/apps/api/src/domain/race/presenters/AllRacesPageDataPresenter.test.ts b/apps/api/src/domain/race/presenters/AllRacesPageDataPresenter.test.ts index c869b40c7..f8a110c39 100644 --- a/apps/api/src/domain/race/presenters/AllRacesPageDataPresenter.test.ts +++ b/apps/api/src/domain/race/presenters/AllRacesPageDataPresenter.test.ts @@ -1,5 +1,5 @@ -import { AllRacesPageDataPresenter } from './AllRacesPageDataPresenter'; import type { GetAllRacesPageDataResult } from '@core/racing/application/use-cases/GetAllRacesPageDataUseCase'; +import { AllRacesPageDataPresenter } from './AllRacesPageDataPresenter'; describe('AllRacesPageDataPresenter', () => { let presenter: AllRacesPageDataPresenter; diff --git a/apps/api/src/domain/race/presenters/GetAllRacesPresenter.test.ts b/apps/api/src/domain/race/presenters/GetAllRacesPresenter.test.ts index 136e67180..ca435e37f 100644 --- a/apps/api/src/domain/race/presenters/GetAllRacesPresenter.test.ts +++ b/apps/api/src/domain/race/presenters/GetAllRacesPresenter.test.ts @@ -1,5 +1,5 @@ -import { GetAllRacesPresenter } from './GetAllRacesPresenter'; import type { GetAllRacesResult } from '@core/racing/application/use-cases/GetAllRacesUseCase'; +import { GetAllRacesPresenter } from './GetAllRacesPresenter'; describe('GetAllRacesPresenter', () => { it('should map races and distinct leagues into the DTO', async () => { diff --git a/apps/api/src/domain/race/presenters/GetTotalRacesPresenter.test.ts b/apps/api/src/domain/race/presenters/GetTotalRacesPresenter.test.ts index 37b4b2aed..adb82b581 100644 --- a/apps/api/src/domain/race/presenters/GetTotalRacesPresenter.test.ts +++ b/apps/api/src/domain/race/presenters/GetTotalRacesPresenter.test.ts @@ -1,5 +1,5 @@ -import { GetTotalRacesPresenter } from './GetTotalRacesPresenter'; import type { GetTotalRacesResult } from '@core/racing/application/use-cases/GetTotalRacesUseCase'; +import { GetTotalRacesPresenter } from './GetTotalRacesPresenter'; describe('GetTotalRacesPresenter', () => { let presenter: GetTotalRacesPresenter; diff --git a/apps/api/src/domain/race/presenters/ImportRaceResultsApiPresenter.test.ts b/apps/api/src/domain/race/presenters/ImportRaceResultsApiPresenter.test.ts index 3217778e3..37e7c73ae 100644 --- a/apps/api/src/domain/race/presenters/ImportRaceResultsApiPresenter.test.ts +++ b/apps/api/src/domain/race/presenters/ImportRaceResultsApiPresenter.test.ts @@ -1,5 +1,5 @@ -import { ImportRaceResultsApiPresenter } from './ImportRaceResultsApiPresenter'; import type { ImportRaceResultsApiResult } from '@core/racing/application/use-cases/ImportRaceResultsApiUseCase'; +import { ImportRaceResultsApiPresenter } from './ImportRaceResultsApiPresenter'; describe('ImportRaceResultsApiPresenter', () => { let presenter: ImportRaceResultsApiPresenter; diff --git a/apps/api/src/domain/race/presenters/RaceDetailPresenter.ts b/apps/api/src/domain/race/presenters/RaceDetailPresenter.ts index 4333b031a..2e6197cfa 100644 --- a/apps/api/src/domain/race/presenters/RaceDetailPresenter.ts +++ b/apps/api/src/domain/race/presenters/RaceDetailPresenter.ts @@ -1,11 +1,11 @@ -import type { GetRaceDetailResult } from '@core/racing/application/use-cases/GetRaceDetailUseCase'; import type { DriverRatingProvider } from '@core/racing/application/ports/DriverRatingProvider'; import type { IImageServicePort } from '@core/racing/application/ports/ImageServicePort'; +import type { GetRaceDetailResult } from '@core/racing/application/use-cases/GetRaceDetailUseCase'; import type { GetRaceDetailParamsDTO } from '../dtos/GetRaceDetailParamsDTO'; import type { RaceDetailDTO } from '../dtos/RaceDetailDTO'; -import type { RaceDetailRaceDTO } from '../dtos/RaceDetailRaceDTO'; -import type { RaceDetailLeagueDTO } from '../dtos/RaceDetailLeagueDTO'; import type { RaceDetailEntryDTO } from '../dtos/RaceDetailEntryDTO'; +import type { RaceDetailLeagueDTO } from '../dtos/RaceDetailLeagueDTO'; +import type { RaceDetailRaceDTO } from '../dtos/RaceDetailRaceDTO'; import type { RaceDetailRegistrationDTO } from '../dtos/RaceDetailRegistrationDTO'; import type { RaceDetailUserResultDTO } from '../dtos/RaceDetailUserResultDTO'; diff --git a/apps/api/src/domain/race/presenters/RacePenaltiesPresenter.test.ts b/apps/api/src/domain/race/presenters/RacePenaltiesPresenter.test.ts index d540dc577..e9675782c 100644 --- a/apps/api/src/domain/race/presenters/RacePenaltiesPresenter.test.ts +++ b/apps/api/src/domain/race/presenters/RacePenaltiesPresenter.test.ts @@ -1,5 +1,5 @@ -import { RacePenaltiesPresenter } from './RacePenaltiesPresenter'; import type { GetRacePenaltiesResult } from '@core/racing/application/use-cases/GetRacePenaltiesUseCase'; +import { RacePenaltiesPresenter } from './RacePenaltiesPresenter'; describe('RacePenaltiesPresenter', () => { let presenter: RacePenaltiesPresenter; diff --git a/apps/api/src/domain/race/presenters/RaceProtestsPresenter.test.ts b/apps/api/src/domain/race/presenters/RaceProtestsPresenter.test.ts index ad8aee2de..56d3cc436 100644 --- a/apps/api/src/domain/race/presenters/RaceProtestsPresenter.test.ts +++ b/apps/api/src/domain/race/presenters/RaceProtestsPresenter.test.ts @@ -1,5 +1,5 @@ -import { RaceProtestsPresenter } from './RaceProtestsPresenter'; import type { GetRaceProtestsResult } from '@core/racing/application/use-cases/GetRaceProtestsUseCase'; +import { RaceProtestsPresenter } from './RaceProtestsPresenter'; describe('RaceProtestsPresenter', () => { let presenter: RaceProtestsPresenter; diff --git a/apps/api/src/domain/race/presenters/RaceProtestsPresenter.ts b/apps/api/src/domain/race/presenters/RaceProtestsPresenter.ts index 9cd24b97f..11e9f0468 100644 --- a/apps/api/src/domain/race/presenters/RaceProtestsPresenter.ts +++ b/apps/api/src/domain/race/presenters/RaceProtestsPresenter.ts @@ -1,6 +1,6 @@ import type { GetRaceProtestsResult } from '@core/racing/application/use-cases/GetRaceProtestsUseCase'; -import type { RaceProtestsDTO } from '../dtos/RaceProtestsDTO'; import type { RaceProtestDTO } from '../dtos/RaceProtestDTO'; +import type { RaceProtestsDTO } from '../dtos/RaceProtestsDTO'; export type GetRaceProtestsResponseModel = RaceProtestsDTO; diff --git a/apps/api/src/domain/race/presenters/RaceResultsDetailPresenter.ts b/apps/api/src/domain/race/presenters/RaceResultsDetailPresenter.ts index 2b8c648bb..ca2605d7e 100644 --- a/apps/api/src/domain/race/presenters/RaceResultsDetailPresenter.ts +++ b/apps/api/src/domain/race/presenters/RaceResultsDetailPresenter.ts @@ -1,11 +1,11 @@ -import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; -import type { - GetRaceResultsDetailResult, - GetRaceResultsDetailErrorCode, -} from '@core/racing/application/use-cases/GetRaceResultsDetailUseCase'; import type { IImageServicePort } from '@core/racing/application/ports/ImageServicePort'; -import type { RaceResultsDetailDTO } from '../dtos/RaceResultsDetailDTO'; +import type { + GetRaceResultsDetailErrorCode, + GetRaceResultsDetailResult, +} from '@core/racing/application/use-cases/GetRaceResultsDetailUseCase'; +import type { ApplicationErrorCode } from '@core/shared/errors/ApplicationErrorCode'; import type { RaceResultDTO } from '../dtos/RaceResultDTO'; +import type { RaceResultsDetailDTO } from '../dtos/RaceResultsDetailDTO'; export type GetRaceResultsDetailResponseModel = RaceResultsDetailDTO; diff --git a/apps/api/src/domain/sponsor/SponsorController.ts b/apps/api/src/domain/sponsor/SponsorController.ts index 029240119..dbfd53ca5 100644 --- a/apps/api/src/domain/sponsor/SponsorController.ts +++ b/apps/api/src/domain/sponsor/SponsorController.ts @@ -1,35 +1,35 @@ -import { Controller, Get, Post, Put, Body, HttpCode, HttpStatus, Param, Query, Inject, UseGuards } from '@nestjs/common'; -import { ApiTags, ApiResponse, ApiOperation } from '@nestjs/swagger'; +import type { RejectSponsorshipRequestResult } from '@core/racing/application/use-cases/RejectSponsorshipRequestUseCase'; +import { Body, Controller, Get, HttpCode, HttpStatus, Inject, Param, Post, Put, Query, UseGuards } from '@nestjs/common'; +import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; +import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import { Public } from '../auth/Public'; import { RequireAuthenticatedUser } from '../auth/RequireAuthenticatedUser'; import { RequireRoles } from '../auth/RequireRoles'; import { RequireCapability } from '../policy/RequireCapability'; -import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import { SponsorService } from './SponsorService'; -import { GetEntitySponsorshipPricingResultDTO } from './dtos/GetEntitySponsorshipPricingResultDTO'; -import { GetSponsorsOutputDTO } from './dtos/GetSponsorsOutputDTO'; +import { AcceptSponsorshipRequestInputDTO } from './dtos/AcceptSponsorshipRequestInputDTO'; +import { AvailableLeagueDTO } from './dtos/AvailableLeagueDTO'; +import { BillingStatsDTO } from './dtos/BillingStatsDTO'; import { CreateSponsorInputDTO } from './dtos/CreateSponsorInputDTO'; import { CreateSponsorOutputDTO } from './dtos/CreateSponsorOutputDTO'; -import { GetSponsorDashboardQueryParamsDTO } from './dtos/GetSponsorDashboardQueryParamsDTO'; -import { SponsorDashboardDTO } from './dtos/SponsorDashboardDTO'; -import { GetSponsorSponsorshipsQueryParamsDTO } from './dtos/GetSponsorSponsorshipsQueryParamsDTO'; -import { SponsorSponsorshipsDTO } from './dtos/SponsorSponsorshipsDTO'; -import { GetSponsorOutputDTO } from './dtos/GetSponsorOutputDTO'; +import { GetEntitySponsorshipPricingResultDTO } from './dtos/GetEntitySponsorshipPricingResultDTO'; import { GetPendingSponsorshipRequestsOutputDTO } from './dtos/GetPendingSponsorshipRequestsOutputDTO'; -import { AcceptSponsorshipRequestInputDTO } from './dtos/AcceptSponsorshipRequestInputDTO'; -import { RejectSponsorshipRequestInputDTO } from './dtos/RejectSponsorshipRequestInputDTO'; -import { PaymentMethodDTO } from './dtos/PaymentMethodDTO'; +import { GetSponsorDashboardQueryParamsDTO } from './dtos/GetSponsorDashboardQueryParamsDTO'; +import { GetSponsorOutputDTO } from './dtos/GetSponsorOutputDTO'; +import { GetSponsorSponsorshipsQueryParamsDTO } from './dtos/GetSponsorSponsorshipsQueryParamsDTO'; +import { GetSponsorsOutputDTO } from './dtos/GetSponsorsOutputDTO'; import { InvoiceDTO } from './dtos/InvoiceDTO'; -import { BillingStatsDTO } from './dtos/BillingStatsDTO'; -import { AvailableLeagueDTO } from './dtos/AvailableLeagueDTO'; import { LeagueDetailDTO } from './dtos/LeagueDetailDTO'; -import { SponsorDriverDTO } from './dtos/SponsorDriverDTO'; -import { SponsorRaceDTO } from './dtos/RaceDTO'; -import { SponsorProfileDTO } from './dtos/SponsorProfileDTO'; import { NotificationSettingsDTO } from './dtos/NotificationSettingsDTO'; +import { PaymentMethodDTO } from './dtos/PaymentMethodDTO'; import { PrivacySettingsDTO } from './dtos/PrivacySettingsDTO'; +import { SponsorRaceDTO } from './dtos/RaceDTO'; +import { RejectSponsorshipRequestInputDTO } from './dtos/RejectSponsorshipRequestInputDTO'; +import { SponsorDashboardDTO } from './dtos/SponsorDashboardDTO'; +import { SponsorDriverDTO } from './dtos/SponsorDriverDTO'; +import { SponsorProfileDTO } from './dtos/SponsorProfileDTO'; +import { SponsorSponsorshipsDTO } from './dtos/SponsorSponsorshipsDTO'; import { AcceptSponsorshipRequestResultViewModel } from './presenters/AcceptSponsorshipRequestPresenter'; -import type { RejectSponsorshipRequestResult } from '@core/racing/application/use-cases/RejectSponsorshipRequestUseCase'; @ApiTags('sponsors') @Controller('sponsors') diff --git a/apps/api/src/domain/sponsor/SponsorModule.ts b/apps/api/src/domain/sponsor/SponsorModule.ts index 230d033af..4b2691217 100644 --- a/apps/api/src/domain/sponsor/SponsorModule.ts +++ b/apps/api/src/domain/sponsor/SponsorModule.ts @@ -2,9 +2,9 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; import { AuthModule } from '../auth/AuthModule'; import { PolicyModule } from '../policy/PolicyModule'; -import { SponsorService } from './SponsorService'; import { SponsorController } from './SponsorController'; import { SponsorProviders } from './SponsorProviders'; +import { SponsorService } from './SponsorService'; @Module({ imports: [RacingPersistenceModule, AuthModule, PolicyModule], diff --git a/apps/api/src/domain/sponsor/dtos/AcceptSponsorshipRequestInputDTO.ts b/apps/api/src/domain/sponsor/dtos/AcceptSponsorshipRequestInputDTO.ts index 370ea4243..33a7b0daa 100644 --- a/apps/api/src/domain/sponsor/dtos/AcceptSponsorshipRequestInputDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/AcceptSponsorshipRequestInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty } from 'class-validator'; +import { IsNotEmpty, IsString } from 'class-validator'; export class AcceptSponsorshipRequestInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/ActivityItemDTO.ts b/apps/api/src/domain/sponsor/dtos/ActivityItemDTO.ts index 508e26151..0c291c442 100644 --- a/apps/api/src/domain/sponsor/dtos/ActivityItemDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/ActivityItemDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsOptional, IsNumber } from 'class-validator'; +import { IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; export class ActivityItemDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/AvailableLeagueDTO.ts b/apps/api/src/domain/sponsor/dtos/AvailableLeagueDTO.ts index 90545dc1d..de035b110 100644 --- a/apps/api/src/domain/sponsor/dtos/AvailableLeagueDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/AvailableLeagueDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, IsOptional, IsDateString } from 'class-validator'; +import { IsDateString, IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; export class AvailableLeagueDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/BillingStatsDTO.ts b/apps/api/src/domain/sponsor/dtos/BillingStatsDTO.ts index cd44b7b1e..916698ed0 100644 --- a/apps/api/src/domain/sponsor/dtos/BillingStatsDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/BillingStatsDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsNumber, IsDateString } from 'class-validator'; +import { IsDateString, IsNumber } from 'class-validator'; export class BillingStatsDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/CreateSponsorInputDTO.ts b/apps/api/src/domain/sponsor/dtos/CreateSponsorInputDTO.ts index 1f9a2555f..da80a1e8d 100644 --- a/apps/api/src/domain/sponsor/dtos/CreateSponsorInputDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/CreateSponsorInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEmail, IsNotEmpty, IsOptional, IsUrl } from 'class-validator'; +import { IsEmail, IsNotEmpty, IsOptional, IsString, IsUrl } from 'class-validator'; export class CreateSponsorInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/InvoiceDTO.ts b/apps/api/src/domain/sponsor/dtos/InvoiceDTO.ts index 007995367..b4df5f2a8 100644 --- a/apps/api/src/domain/sponsor/dtos/InvoiceDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/InvoiceDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, IsDateString } from 'class-validator'; +import { IsDateString, IsEnum, IsNumber, IsString } from 'class-validator'; export class InvoiceDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/LeagueDetailDTO.ts b/apps/api/src/domain/sponsor/dtos/LeagueDetailDTO.ts index 7ba5d992e..8724c29e4 100644 --- a/apps/api/src/domain/sponsor/dtos/LeagueDetailDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/LeagueDetailDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, IsOptional } from 'class-validator'; +import { IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; export class LeagueDetailDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/PaymentMethodDTO.ts b/apps/api/src/domain/sponsor/dtos/PaymentMethodDTO.ts index 27cefb742..a6eb9881b 100644 --- a/apps/api/src/domain/sponsor/dtos/PaymentMethodDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/PaymentMethodDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsBoolean, IsOptional, IsNumber } from 'class-validator'; +import { IsBoolean, IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; export class PaymentMethodDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/RaceDTO.ts b/apps/api/src/domain/sponsor/dtos/RaceDTO.ts index 462c51b52..0ff8c5a58 100644 --- a/apps/api/src/domain/sponsor/dtos/RaceDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/RaceDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, IsDateString } from 'class-validator'; +import { IsDateString, IsEnum, IsNumber, IsString } from 'class-validator'; export class SponsorRaceDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/RejectSponsorshipRequestInputDTO.ts b/apps/api/src/domain/sponsor/dtos/RejectSponsorshipRequestInputDTO.ts index c2662dd60..23c660cd3 100644 --- a/apps/api/src/domain/sponsor/dtos/RejectSponsorshipRequestInputDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/RejectSponsorshipRequestInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsOptional } from 'class-validator'; +import { IsNotEmpty, IsOptional, IsString } from 'class-validator'; export class RejectSponsorshipRequestInputDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/RenewalAlertDTO.ts b/apps/api/src/domain/sponsor/dtos/RenewalAlertDTO.ts index 9be876284..9e4d48954 100644 --- a/apps/api/src/domain/sponsor/dtos/RenewalAlertDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/RenewalAlertDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, IsDateString } from 'class-validator'; +import { IsDateString, IsEnum, IsNumber, IsString } from 'class-validator'; export class RenewalAlertDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsorDashboardDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsorDashboardDTO.ts index 742ac05fb..1127f5776 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsorDashboardDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsorDashboardDTO.ts @@ -1,11 +1,11 @@ import { ApiProperty } from '@nestjs/swagger'; import { IsString } from 'class-validator'; -import { SponsorDashboardMetricsDTO } from './SponsorDashboardMetricsDTO'; -import { SponsoredLeagueDTO } from './SponsoredLeagueDTO'; -import { SponsorDashboardInvestmentDTO } from './SponsorDashboardInvestmentDTO'; -import { SponsorshipDTO } from './SponsorshipDTO'; import { ActivityItemDTO } from './ActivityItemDTO'; import { RenewalAlertDTO } from './RenewalAlertDTO'; +import { SponsorDashboardInvestmentDTO } from './SponsorDashboardInvestmentDTO'; +import { SponsorDashboardMetricsDTO } from './SponsorDashboardMetricsDTO'; +import { SponsoredLeagueDTO } from './SponsoredLeagueDTO'; +import { SponsorshipDTO } from './SponsorshipDTO'; export class SponsorDashboardDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsorDriverDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsorDriverDTO.ts index c98dfc14d..fa4820ea2 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsorDriverDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsorDriverDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class SponsorDriverDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsorProfileDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsorProfileDTO.ts index 74fab406c..37f7f35aa 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsorProfileDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsorProfileDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional } from 'class-validator'; +import { IsOptional, IsString } from 'class-validator'; export class SponsorProfileDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsoredLeagueDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsoredLeagueDTO.ts index 4f19021b8..a22a35db3 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsoredLeagueDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsoredLeagueDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber } from 'class-validator'; +import { IsEnum, IsNumber, IsString } from 'class-validator'; export class SponsoredLeagueDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsorshipDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsorshipDTO.ts index 027ed3887..799165c4f 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsorshipDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsorshipDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsNumber, IsOptional, IsDateString } from 'class-validator'; +import { IsDateString, IsEnum, IsNumber, IsOptional, IsString } from 'class-validator'; export class SponsorshipDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsorshipDetailDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsorshipDetailDTO.ts index 46c41b248..06e25b69c 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsorshipDetailDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsorshipDetailDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsEnum, IsOptional, IsDate } from 'class-validator'; +import { IsDate, IsEnum, IsOptional, IsString } from 'class-validator'; export class SponsorshipDetailDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/dtos/SponsorshipPricingItemDTO.ts b/apps/api/src/domain/sponsor/dtos/SponsorshipPricingItemDTO.ts index 7f4cf09f5..4b1c2b4aa 100644 --- a/apps/api/src/domain/sponsor/dtos/SponsorshipPricingItemDTO.ts +++ b/apps/api/src/domain/sponsor/dtos/SponsorshipPricingItemDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNumber } from 'class-validator'; +import { IsNumber, IsString } from 'class-validator'; export class SponsorshipPricingItemDTO { @ApiProperty() diff --git a/apps/api/src/domain/sponsor/presenters/CreateSponsorPresenter.test.ts b/apps/api/src/domain/sponsor/presenters/CreateSponsorPresenter.test.ts index 306c0a58d..087160086 100644 --- a/apps/api/src/domain/sponsor/presenters/CreateSponsorPresenter.test.ts +++ b/apps/api/src/domain/sponsor/presenters/CreateSponsorPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { CreateSponsorPresenter } from './CreateSponsorPresenter'; import { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { CreateSponsorPresenter } from './CreateSponsorPresenter'; describe('CreateSponsorPresenter', () => { let presenter: CreateSponsorPresenter; diff --git a/apps/api/src/domain/sponsor/presenters/GetEntitySponsorshipPricingPresenter.test.ts b/apps/api/src/domain/sponsor/presenters/GetEntitySponsorshipPricingPresenter.test.ts index bdd6b7b77..8e6759863 100644 --- a/apps/api/src/domain/sponsor/presenters/GetEntitySponsorshipPricingPresenter.test.ts +++ b/apps/api/src/domain/sponsor/presenters/GetEntitySponsorshipPricingPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { GetEntitySponsorshipPricingPresenter } from './GetEntitySponsorshipPricingPresenter'; import type { GetEntitySponsorshipPricingResult } from '@core/racing/application/use-cases/GetEntitySponsorshipPricingUseCase'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetEntitySponsorshipPricingPresenter } from './GetEntitySponsorshipPricingPresenter'; describe('GetEntitySponsorshipPricingPresenter', () => { let presenter: GetEntitySponsorshipPricingPresenter; diff --git a/apps/api/src/domain/sponsor/presenters/GetSponsorDashboardPresenter.test.ts b/apps/api/src/domain/sponsor/presenters/GetSponsorDashboardPresenter.test.ts index e7b484035..af27f1873 100644 --- a/apps/api/src/domain/sponsor/presenters/GetSponsorDashboardPresenter.test.ts +++ b/apps/api/src/domain/sponsor/presenters/GetSponsorDashboardPresenter.test.ts @@ -1,7 +1,7 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { GetSponsorDashboardPresenter } from './GetSponsorDashboardPresenter'; import type { GetSponsorDashboardResult } from '@core/racing/application/use-cases/GetSponsorDashboardUseCase'; import { Money } from '@core/racing/domain/value-objects/Money'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetSponsorDashboardPresenter } from './GetSponsorDashboardPresenter'; describe('GetSponsorDashboardPresenter', () => { let presenter: GetSponsorDashboardPresenter; diff --git a/apps/api/src/domain/sponsor/presenters/GetSponsorPresenter.ts b/apps/api/src/domain/sponsor/presenters/GetSponsorPresenter.ts index cba972f8e..dd9f133a6 100644 --- a/apps/api/src/domain/sponsor/presenters/GetSponsorPresenter.ts +++ b/apps/api/src/domain/sponsor/presenters/GetSponsorPresenter.ts @@ -1,5 +1,5 @@ -import { GetSponsorOutputDTO } from '../dtos/GetSponsorOutputDTO'; import type { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; +import { GetSponsorOutputDTO } from '../dtos/GetSponsorOutputDTO'; export class GetSponsorPresenter { private result: GetSponsorOutputDTO | null = null; diff --git a/apps/api/src/domain/sponsor/presenters/GetSponsorSponsorshipsPresenter.test.ts b/apps/api/src/domain/sponsor/presenters/GetSponsorSponsorshipsPresenter.test.ts index 6ef82f219..dbc2967d4 100644 --- a/apps/api/src/domain/sponsor/presenters/GetSponsorSponsorshipsPresenter.test.ts +++ b/apps/api/src/domain/sponsor/presenters/GetSponsorSponsorshipsPresenter.test.ts @@ -1,8 +1,8 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { GetSponsorSponsorshipsPresenter } from './GetSponsorSponsorshipsPresenter'; import type { GetSponsorSponsorshipsResult } from '@core/racing/application/use-cases/GetSponsorSponsorshipsUseCase'; import { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; import { Money } from '@core/racing/domain/value-objects/Money'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetSponsorSponsorshipsPresenter } from './GetSponsorSponsorshipsPresenter'; describe('GetSponsorSponsorshipsPresenter', () => { let presenter: GetSponsorSponsorshipsPresenter; diff --git a/apps/api/src/domain/sponsor/presenters/GetSponsorsPresenter.test.ts b/apps/api/src/domain/sponsor/presenters/GetSponsorsPresenter.test.ts index 3ac076c43..37b3cca79 100644 --- a/apps/api/src/domain/sponsor/presenters/GetSponsorsPresenter.test.ts +++ b/apps/api/src/domain/sponsor/presenters/GetSponsorsPresenter.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, beforeEach } from 'vitest'; -import { GetSponsorsPresenter } from './GetSponsorsPresenter'; import { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { GetSponsorsPresenter } from './GetSponsorsPresenter'; describe('GetSponsorsPresenter', () => { let presenter: GetSponsorsPresenter; diff --git a/apps/api/src/domain/sponsor/presenters/LeagueDetailPresenter.ts b/apps/api/src/domain/sponsor/presenters/LeagueDetailPresenter.ts index 96481fae6..052777fb6 100644 --- a/apps/api/src/domain/sponsor/presenters/LeagueDetailPresenter.ts +++ b/apps/api/src/domain/sponsor/presenters/LeagueDetailPresenter.ts @@ -1,6 +1,6 @@ import { LeagueDetailDTO } from '../dtos/LeagueDetailDTO'; -import { SponsorDriverDTO } from '../dtos/SponsorDriverDTO'; import { SponsorRaceDTO } from '../dtos/RaceDTO'; +import { SponsorDriverDTO } from '../dtos/SponsorDriverDTO'; export interface LeagueDetailViewModel { league: LeagueDetailDTO; diff --git a/apps/api/src/domain/sponsor/presenters/SponsorBillingPresenter.ts b/apps/api/src/domain/sponsor/presenters/SponsorBillingPresenter.ts index a98e35998..29dc93548 100644 --- a/apps/api/src/domain/sponsor/presenters/SponsorBillingPresenter.ts +++ b/apps/api/src/domain/sponsor/presenters/SponsorBillingPresenter.ts @@ -1,6 +1,6 @@ -import { PaymentMethodDTO } from '../dtos/PaymentMethodDTO'; -import { InvoiceDTO } from '../dtos/InvoiceDTO'; import { BillingStatsDTO } from '../dtos/BillingStatsDTO'; +import { InvoiceDTO } from '../dtos/InvoiceDTO'; +import { PaymentMethodDTO } from '../dtos/PaymentMethodDTO'; export interface SponsorBillingViewModel { paymentMethods: PaymentMethodDTO[]; diff --git a/apps/api/src/domain/sponsor/presenters/SponsorSettingsPresenter.ts b/apps/api/src/domain/sponsor/presenters/SponsorSettingsPresenter.ts index 0941d5f2f..46ff4ece7 100644 --- a/apps/api/src/domain/sponsor/presenters/SponsorSettingsPresenter.ts +++ b/apps/api/src/domain/sponsor/presenters/SponsorSettingsPresenter.ts @@ -1,6 +1,6 @@ -import { SponsorProfileDTO } from '../dtos/SponsorProfileDTO'; import { NotificationSettingsDTO } from '../dtos/NotificationSettingsDTO'; import { PrivacySettingsDTO } from '../dtos/PrivacySettingsDTO'; +import { SponsorProfileDTO } from '../dtos/SponsorProfileDTO'; export interface SponsorSettingsViewModel { profile: SponsorProfileDTO; diff --git a/apps/api/src/domain/team/TeamController.test.ts b/apps/api/src/domain/team/TeamController.test.ts index 28cf12c6e..dd893a666 100644 --- a/apps/api/src/domain/team/TeamController.test.ts +++ b/apps/api/src/domain/team/TeamController.test.ts @@ -4,15 +4,15 @@ import { Reflector } from '@nestjs/core'; import { Test, TestingModule } from '@nestjs/testing'; import request from 'supertest'; import { vi } from 'vitest'; -import { TeamController } from './TeamController'; -import { TeamService } from './TeamService'; -import { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; -import { UpdateTeamInput } from './dtos/TeamDto'; import { AuthenticationGuard } from '../auth/AuthenticationGuard'; import { AuthorizationGuard } from '../auth/AuthorizationGuard'; import type { AuthorizationService } from '../auth/AuthorizationService'; import { FeatureAvailabilityGuard } from '../policy/FeatureAvailabilityGuard'; import type { PolicyService, PolicySnapshot } from '../policy/PolicyService'; +import { TeamController } from './TeamController'; +import { TeamService } from './TeamService'; +import { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; +import { UpdateTeamInput } from './dtos/TeamDto'; describe('TeamController', () => { let controller: TeamController; diff --git a/apps/api/src/domain/team/TeamController.ts b/apps/api/src/domain/team/TeamController.ts index fd1e8ad33..d13cdb2eb 100644 --- a/apps/api/src/domain/team/TeamController.ts +++ b/apps/api/src/domain/team/TeamController.ts @@ -1,23 +1,23 @@ -import { Controller, Get, Post, Patch, Body, Req, Param, Inject, NotFoundException } from '@nestjs/common'; -import { ApiTags, ApiResponse, ApiOperation } from '@nestjs/swagger'; +import { Body, Controller, Get, Inject, NotFoundException, Param, Patch, Post, Req } from '@nestjs/common'; +import { ApiOperation, ApiResponse, ApiTags } from '@nestjs/swagger'; import { Public } from '../auth/Public'; +import { TeamService } from './TeamService'; +import { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; +import { CreateTeamOutputDTO } from './dtos/CreateTeamOutputDTO'; +import { GetAllTeamsOutputDTO } from './dtos/GetAllTeamsOutputDTO'; +import { GetDriverTeamOutputDTO } from './dtos/GetDriverTeamOutputDTO'; +import { GetTeamDetailsOutputDTO } from './dtos/GetTeamDetailsOutputDTO'; +import { GetTeamJoinRequestsOutputDTO } from './dtos/GetTeamJoinRequestsOutputDTO'; +import { GetTeamMembersOutputDTO } from './dtos/GetTeamMembersOutputDTO'; +import { GetTeamMembershipOutputDTO } from './dtos/GetTeamMembershipOutputDTO'; +import { UpdateTeamInput } from './dtos/TeamDto'; +import { UpdateTeamOutputDTO } from './dtos/UpdateTeamOutputDTO'; type RequestWithUser = Record & { user?: { userId?: string; }; }; -import { TeamService } from './TeamService'; -import { GetAllTeamsOutputDTO } from './dtos/GetAllTeamsOutputDTO'; -import { GetTeamDetailsOutputDTO } from './dtos/GetTeamDetailsOutputDTO'; -import { GetTeamMembersOutputDTO } from './dtos/GetTeamMembersOutputDTO'; -import { GetTeamJoinRequestsOutputDTO } from './dtos/GetTeamJoinRequestsOutputDTO'; -import { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; -import { CreateTeamOutputDTO } from './dtos/CreateTeamOutputDTO'; -import { UpdateTeamInput } from './dtos/TeamDto'; -import { UpdateTeamOutputDTO } from './dtos/UpdateTeamOutputDTO'; -import { GetDriverTeamOutputDTO } from './dtos/GetDriverTeamOutputDTO'; -import { GetTeamMembershipOutputDTO } from './dtos/GetTeamMembershipOutputDTO'; @ApiTags('teams') @Controller('teams') diff --git a/apps/api/src/domain/team/TeamModule.test.ts b/apps/api/src/domain/team/TeamModule.test.ts index 9ea033de6..fb9c2ca60 100644 --- a/apps/api/src/domain/team/TeamModule.test.ts +++ b/apps/api/src/domain/team/TeamModule.test.ts @@ -1,6 +1,6 @@ import { Test, TestingModule } from '@nestjs/testing'; -import { TeamModule } from './TeamModule'; import { TeamController } from './TeamController'; +import { TeamModule } from './TeamModule'; import { TeamService } from './TeamService'; describe('TeamModule', () => { diff --git a/apps/api/src/domain/team/TeamModule.ts b/apps/api/src/domain/team/TeamModule.ts index 0211eb503..d5088556d 100644 --- a/apps/api/src/domain/team/TeamModule.ts +++ b/apps/api/src/domain/team/TeamModule.ts @@ -1,8 +1,8 @@ import { Module } from '@nestjs/common'; import { RacingPersistenceModule } from '../../persistence/racing/RacingPersistenceModule'; -import { TeamService } from './TeamService'; import { TeamController } from './TeamController'; import { TeamProviders } from './TeamProviders'; +import { TeamService } from './TeamService'; @Module({ imports: [RacingPersistenceModule], diff --git a/apps/api/src/domain/team/TeamProviders.ts b/apps/api/src/domain/team/TeamProviders.ts index 384e662f9..23d87902e 100644 --- a/apps/api/src/domain/team/TeamProviders.ts +++ b/apps/api/src/domain/team/TeamProviders.ts @@ -1,59 +1,57 @@ import { Provider } from '@nestjs/common'; import { - IMAGE_SERVICE_TOKEN, - LOGGER_TOKEN, - MEDIA_REPOSITORY_TOKEN, - MEDIA_RESOLVER_TOKEN, - TEAM_REPOSITORY_TOKEN, - TEAM_MEMBERSHIP_REPOSITORY_TOKEN, - DRIVER_REPOSITORY_TOKEN, - TEAM_STATS_REPOSITORY_TOKEN, - GET_ALL_TEAMS_USE_CASE_TOKEN, - GET_TEAM_DETAILS_USE_CASE_TOKEN, - GET_TEAM_MEMBERS_USE_CASE_TOKEN, - GET_TEAM_JOIN_REQUESTS_USE_CASE_TOKEN, - CREATE_TEAM_USE_CASE_TOKEN, - UPDATE_TEAM_USE_CASE_TOKEN, - GET_DRIVER_TEAM_USE_CASE_TOKEN, - GET_TEAM_MEMBERSHIP_USE_CASE_TOKEN, - JOIN_TEAM_USE_CASE_TOKEN, + CREATE_TEAM_USE_CASE_TOKEN, + DRIVER_REPOSITORY_TOKEN, + GET_ALL_TEAMS_USE_CASE_TOKEN, + GET_DRIVER_TEAM_USE_CASE_TOKEN, + GET_TEAM_DETAILS_USE_CASE_TOKEN, + GET_TEAM_JOIN_REQUESTS_USE_CASE_TOKEN, + GET_TEAM_MEMBERS_USE_CASE_TOKEN, + GET_TEAM_MEMBERSHIP_USE_CASE_TOKEN, + IMAGE_SERVICE_TOKEN, + JOIN_TEAM_USE_CASE_TOKEN, + LOGGER_TOKEN, + MEDIA_REPOSITORY_TOKEN, + MEDIA_RESOLVER_TOKEN, + TEAM_MEMBERSHIP_REPOSITORY_TOKEN, + TEAM_REPOSITORY_TOKEN, + TEAM_STATS_REPOSITORY_TOKEN, + UPDATE_TEAM_USE_CASE_TOKEN, } from './TeamTokens'; export { - TEAM_REPOSITORY_TOKEN, - TEAM_MEMBERSHIP_REPOSITORY_TOKEN, - DRIVER_REPOSITORY_TOKEN, - IMAGE_SERVICE_TOKEN, - LOGGER_TOKEN, - MEDIA_REPOSITORY_TOKEN, - MEDIA_RESOLVER_TOKEN, + DRIVER_REPOSITORY_TOKEN, + IMAGE_SERVICE_TOKEN, + LOGGER_TOKEN, + MEDIA_REPOSITORY_TOKEN, + MEDIA_RESOLVER_TOKEN, TEAM_MEMBERSHIP_REPOSITORY_TOKEN, TEAM_REPOSITORY_TOKEN } from './TeamTokens'; // Import core interfaces -import type { Logger } from '@core/shared/application/Logger'; import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; -import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; -import type { ITeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; import type { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; +import type { ITeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; +import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; import type { ITeamStatsRepository } from '@core/racing/domain/repositories/TeamStatsRepository'; +import type { Logger } from '@core/shared/application/Logger'; // Import concrete implementations -import { InMemoryImageServiceAdapter } from '@adapters/media/ports/InMemoryImageServiceAdapter'; import { ConsoleLogger } from '@adapters/logging/ConsoleLogger'; -import { InMemoryMediaRepository } from '@adapters/racing/persistence/media/InMemoryMediaRepository'; import { MediaResolverAdapter } from '@adapters/media/MediaResolverAdapter'; +import { InMemoryImageServiceAdapter } from '@adapters/media/ports/InMemoryImageServiceAdapter'; +import { InMemoryMediaRepository } from '@adapters/racing/persistence/media/InMemoryMediaRepository'; // Import use cases -import { GetAllTeamsUseCase } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; -import { GetTeamDetailsUseCase } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; -import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; -import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; import { CreateTeamUseCase } from '@core/racing/application/use-cases/CreateTeamUseCase'; -import { UpdateTeamUseCase } from '@core/racing/application/use-cases/UpdateTeamUseCase'; +import { GetAllTeamsUseCase } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; import { GetDriverTeamUseCase } from '@core/racing/application/use-cases/GetDriverTeamUseCase'; +import { GetTeamDetailsUseCase } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; +import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; import { GetTeamMembershipUseCase } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; +import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; import { JoinTeamUseCase } from '@core/racing/application/use-cases/JoinTeamUseCase'; +import { UpdateTeamUseCase } from '@core/racing/application/use-cases/UpdateTeamUseCase'; // Import presenters import { AllTeamsPresenter } from './presenters/AllTeamsPresenter'; diff --git a/apps/api/src/domain/team/TeamService.test.ts b/apps/api/src/domain/team/TeamService.test.ts index 907cd8f65..0f2c04444 100644 --- a/apps/api/src/domain/team/TeamService.test.ts +++ b/apps/api/src/domain/team/TeamService.test.ts @@ -1,14 +1,14 @@ -import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; +import { CreateTeamUseCase } from '@core/racing/application/use-cases/CreateTeamUseCase'; +import { GetAllTeamsUseCase } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; +import { GetDriverTeamUseCase } from '@core/racing/application/use-cases/GetDriverTeamUseCase'; +import { GetTeamDetailsUseCase } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; +import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; +import { GetTeamMembershipUseCase } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; +import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; +import { UpdateTeamUseCase } from '@core/racing/application/use-cases/UpdateTeamUseCase'; import type { Logger } from '@core/shared/application/Logger'; import { Result } from '@core/shared/domain/Result'; -import { GetAllTeamsUseCase } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; -import { GetTeamDetailsUseCase } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; -import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; -import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; -import { CreateTeamUseCase } from '@core/racing/application/use-cases/CreateTeamUseCase'; -import { UpdateTeamUseCase } from '@core/racing/application/use-cases/UpdateTeamUseCase'; -import { GetDriverTeamUseCase } from '@core/racing/application/use-cases/GetDriverTeamUseCase'; -import { GetTeamMembershipUseCase } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; +import { beforeEach, describe, expect, it, vi, type Mock } from 'vitest'; import type { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; import type { UpdateTeamInputDTO } from './dtos/UpdateTeamInputDTO'; import { TeamService } from './TeamService'; diff --git a/apps/api/src/domain/team/TeamService.ts b/apps/api/src/domain/team/TeamService.ts index bb0e8823e..a16a5dcab 100644 --- a/apps/api/src/domain/team/TeamService.ts +++ b/apps/api/src/domain/team/TeamService.ts @@ -1,41 +1,41 @@ -import { Injectable, Inject } from '@nestjs/common'; +import { Inject, Injectable } from '@nestjs/common'; import { CreateTeamInputDTO } from './dtos/CreateTeamInputDTO'; -import { UpdateTeamInputDTO } from './dtos/UpdateTeamInputDTO'; -import { GetAllTeamsOutputDTO } from './dtos/GetAllTeamsOutputDTO'; -import { GetTeamDetailsOutputDTO } from './dtos/GetTeamDetailsOutputDTO'; -import { GetTeamMembersOutputDTO } from './dtos/GetTeamMembersOutputDTO'; -import { GetTeamJoinRequestsOutputDTO } from './dtos/GetTeamJoinRequestsOutputDTO'; import { CreateTeamOutputDTO } from './dtos/CreateTeamOutputDTO'; -import { UpdateTeamOutputDTO } from './dtos/UpdateTeamOutputDTO'; +import { GetAllTeamsOutputDTO } from './dtos/GetAllTeamsOutputDTO'; import { GetDriverTeamOutputDTO } from './dtos/GetDriverTeamOutputDTO'; +import { GetTeamDetailsOutputDTO } from './dtos/GetTeamDetailsOutputDTO'; +import { GetTeamJoinRequestsOutputDTO } from './dtos/GetTeamJoinRequestsOutputDTO'; import { GetTeamMembershipOutputDTO } from './dtos/GetTeamMembershipOutputDTO'; +import { GetTeamMembersOutputDTO } from './dtos/GetTeamMembersOutputDTO'; +import { UpdateTeamInputDTO } from './dtos/UpdateTeamInputDTO'; +import { UpdateTeamOutputDTO } from './dtos/UpdateTeamOutputDTO'; // Core imports import type { Logger } from '@core/shared/application/Logger'; // Use cases +import { CreateTeamInput, CreateTeamUseCase } from '@core/racing/application/use-cases/CreateTeamUseCase'; import { GetAllTeamsUseCase } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; -import { GetTeamDetailsUseCase } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; -import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; -import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; -import { CreateTeamUseCase, CreateTeamInput } from '@core/racing/application/use-cases/CreateTeamUseCase'; -import { UpdateTeamUseCase, UpdateTeamInput } from '@core/racing/application/use-cases/UpdateTeamUseCase'; import { GetDriverTeamUseCase } from '@core/racing/application/use-cases/GetDriverTeamUseCase'; +import { GetTeamDetailsUseCase } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; +import { GetTeamJoinRequestsUseCase } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; import { GetTeamMembershipUseCase } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; +import { GetTeamMembersUseCase } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; import { JoinTeamUseCase } from '@core/racing/application/use-cases/JoinTeamUseCase'; +import { UpdateTeamInput, UpdateTeamUseCase } from '@core/racing/application/use-cases/UpdateTeamUseCase'; // Tokens import { - LOGGER_TOKEN, - GET_ALL_TEAMS_USE_CASE_TOKEN, - GET_TEAM_DETAILS_USE_CASE_TOKEN, - GET_TEAM_MEMBERS_USE_CASE_TOKEN, - GET_TEAM_JOIN_REQUESTS_USE_CASE_TOKEN, - CREATE_TEAM_USE_CASE_TOKEN, - UPDATE_TEAM_USE_CASE_TOKEN, - GET_DRIVER_TEAM_USE_CASE_TOKEN, - GET_TEAM_MEMBERSHIP_USE_CASE_TOKEN, - JOIN_TEAM_USE_CASE_TOKEN, + CREATE_TEAM_USE_CASE_TOKEN, + GET_ALL_TEAMS_USE_CASE_TOKEN, + GET_DRIVER_TEAM_USE_CASE_TOKEN, + GET_TEAM_DETAILS_USE_CASE_TOKEN, + GET_TEAM_JOIN_REQUESTS_USE_CASE_TOKEN, + GET_TEAM_MEMBERS_USE_CASE_TOKEN, + GET_TEAM_MEMBERSHIP_USE_CASE_TOKEN, + JOIN_TEAM_USE_CASE_TOKEN, + LOGGER_TOKEN, + UPDATE_TEAM_USE_CASE_TOKEN, } from './TeamTokens'; @Injectable() diff --git a/apps/api/src/domain/team/dtos/TeamDto.ts b/apps/api/src/domain/team/dtos/TeamDto.ts index 2ecdbec02..6fc03cf99 100644 --- a/apps/api/src/domain/team/dtos/TeamDto.ts +++ b/apps/api/src/domain/team/dtos/TeamDto.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsNotEmpty, IsBoolean, IsOptional, IsArray } from 'class-validator'; +import { IsArray, IsBoolean, IsNotEmpty, IsOptional, IsString } from 'class-validator'; export class TeamListItemViewModel { @ApiProperty() diff --git a/apps/api/src/domain/team/dtos/UpdateTeamInputDTO.ts b/apps/api/src/domain/team/dtos/UpdateTeamInputDTO.ts index 0b3489a4f..2bb742f77 100644 --- a/apps/api/src/domain/team/dtos/UpdateTeamInputDTO.ts +++ b/apps/api/src/domain/team/dtos/UpdateTeamInputDTO.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger'; -import { IsString, IsOptional } from 'class-validator'; +import { IsOptional, IsString } from 'class-validator'; export class UpdateTeamInputDTO { @ApiProperty({ required: false }) diff --git a/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts b/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts index e1f491ba3..1cde9f10e 100644 --- a/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts +++ b/apps/api/src/domain/team/presenters/AllTeamsPresenter.ts @@ -1,9 +1,9 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; +import { MediaReference } from '@core/domain/media/MediaReference'; +import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; import type { GetAllTeamsResult } from '@core/racing/application/use-cases/GetAllTeamsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { GetAllTeamsOutputDTO } from '../dtos/GetAllTeamsOutputDTO'; import { TeamListItemDTO } from '../dtos/TeamListItemDTO'; -import type { MediaResolverPort } from '@core/ports/media/MediaResolverPort'; -import { MediaReference } from '@core/domain/media/MediaReference'; export class AllTeamsPresenter implements UseCaseOutputPort { private model: GetAllTeamsOutputDTO | null = null; diff --git a/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts b/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts index 31c82fdf3..942c67be2 100644 --- a/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts +++ b/apps/api/src/domain/team/presenters/CreateTeamPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { CreateTeamResult } from '@core/racing/application/use-cases/CreateTeamUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { CreateTeamOutputDTO } from '../dtos/CreateTeamOutputDTO'; export class CreateTeamPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts b/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts index 64c6da51d..578adc2ce 100644 --- a/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts +++ b/apps/api/src/domain/team/presenters/DriverTeamPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetDriverTeamResult } from '@core/racing/application/use-cases/GetDriverTeamUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import { GetDriverTeamOutputDTO } from '../dtos/GetDriverTeamOutputDTO'; export class DriverTeamPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts b/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts index e7fd0d1e7..bc2df8c24 100644 --- a/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamDetailsPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamDetailsResult } from '@core/racing/application/use-cases/GetTeamDetailsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamDetailsOutputDTO } from '../dtos/GetTeamDetailsOutputDTO'; export class TeamDetailsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts b/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts index dea3e9efd..360536af1 100644 --- a/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamJoinRequestsPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamJoinRequestsResult } from '@core/racing/application/use-cases/GetTeamJoinRequestsUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamJoinRequestsOutputDTO } from '../dtos/GetTeamJoinRequestsOutputDTO'; export class TeamJoinRequestsPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts b/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts index 81b2b6580..68bc103dd 100644 --- a/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamMembersPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamMembersResult } from '@core/racing/application/use-cases/GetTeamMembersUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamMembersOutputDTO } from '../dtos/GetTeamMembersOutputDTO'; export class TeamMembersPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts b/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts index 6072a371f..684a3fdcf 100644 --- a/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamMembershipPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamMembershipResult } from '@core/racing/application/use-cases/GetTeamMembershipUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamMembershipOutputDTO } from '../dtos/GetTeamMembershipOutputDTO'; export class TeamMembershipPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts b/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts index 633e0f6df..400fe66fd 100644 --- a/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts +++ b/apps/api/src/domain/team/presenters/TeamsLeaderboardPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamsLeaderboardResult } from '@core/racing/application/use-cases/GetTeamsLeaderboardUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { GetTeamsLeaderboardOutputDTO } from '../dtos/GetTeamsLeaderboardOutputDTO'; export class TeamsLeaderboardPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts b/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts index 433c54752..75b3b9be8 100644 --- a/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts +++ b/apps/api/src/domain/team/presenters/UpdateTeamPresenter.ts @@ -1,5 +1,5 @@ -import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { UpdateTeamResult } from '@core/racing/application/use-cases/UpdateTeamUseCase'; +import type { UseCaseOutputPort } from '@core/shared/application/UseCaseOutputPort'; import type { UpdateTeamOutputDTO } from '../dtos/UpdateTeamOutputDTO'; export class UpdateTeamPresenter implements UseCaseOutputPort { diff --git a/apps/api/src/features/features.controller.test.ts b/apps/api/src/features/features.controller.test.ts index d59ec4670..eedc86c9c 100644 --- a/apps/api/src/features/features.controller.test.ts +++ b/apps/api/src/features/features.controller.test.ts @@ -1,6 +1,6 @@ -import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; +import type { ConfigLoadResult, FlattenedFeatures } from '../config/feature-types'; import { FeaturesController } from './features.controller'; -import type { FlattenedFeatures, ConfigLoadResult } from '../config/feature-types'; // Mock the feature-loader module vi.mock('../config/feature-loader', () => ({ diff --git a/apps/api/src/features/features.controller.ts b/apps/api/src/features/features.controller.ts index 6b4491c74..2b61d3a96 100644 --- a/apps/api/src/features/features.controller.ts +++ b/apps/api/src/features/features.controller.ts @@ -1,6 +1,6 @@ import { Controller, Get } from '@nestjs/common'; -import { Public } from '../domain/auth/Public'; import { loadFeatureConfig } from '../config/feature-loader'; +import { Public } from '../domain/auth/Public'; @Controller('features') export class FeaturesController { diff --git a/apps/api/src/persistence/PersistenceModeVerification.test.ts b/apps/api/src/persistence/PersistenceModeVerification.test.ts index a43245dbf..b73c86aa3 100644 --- a/apps/api/src/persistence/PersistenceModeVerification.test.ts +++ b/apps/api/src/persistence/PersistenceModeVerification.test.ts @@ -1,4 +1,4 @@ -import { describe, it, expect, beforeEach, afterEach } from 'vitest'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; /** * Unit test to verify persistence mode configuration diff --git a/apps/api/src/persistence/achievement/AchievementPersistenceModule.test.ts b/apps/api/src/persistence/achievement/AchievementPersistenceModule.test.ts index 71528d47c..4b68832ee 100644 --- a/apps/api/src/persistence/achievement/AchievementPersistenceModule.test.ts +++ b/apps/api/src/persistence/achievement/AchievementPersistenceModule.test.ts @@ -1,7 +1,7 @@ -import { describe, expect, it, beforeEach } from 'vitest'; -import { Test, TestingModule } from '@nestjs/testing'; -import { ACHIEVEMENT_REPOSITORY_TOKEN } from './AchievementPersistenceTokens'; import type { IAchievementRepository } from '@core/identity/domain/repositories/AchievementRepository'; +import { Test, TestingModule } from '@nestjs/testing'; +import { beforeEach, describe, expect, it } from 'vitest'; +import { ACHIEVEMENT_REPOSITORY_TOKEN } from './AchievementPersistenceTokens'; describe('AchievementPersistenceModule', () => { const originalEnv = { ...process.env }; diff --git a/apps/api/src/persistence/analytics/AnalyticsPersistenceModule.test.ts b/apps/api/src/persistence/analytics/AnalyticsPersistenceModule.test.ts index 977081400..aabe05e50 100644 --- a/apps/api/src/persistence/analytics/AnalyticsPersistenceModule.test.ts +++ b/apps/api/src/persistence/analytics/AnalyticsPersistenceModule.test.ts @@ -1,13 +1,13 @@ import 'reflect-metadata'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; import { - ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, - ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, - ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, + ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, + ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, + ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, } from './AnalyticsPersistenceTokens'; describe('AnalyticsPersistenceModule', () => { diff --git a/apps/api/src/persistence/identity/IdentityPersistenceModule.test.ts b/apps/api/src/persistence/identity/IdentityPersistenceModule.test.ts index 92059e2a8..8f3c845e1 100644 --- a/apps/api/src/persistence/identity/IdentityPersistenceModule.test.ts +++ b/apps/api/src/persistence/identity/IdentityPersistenceModule.test.ts @@ -1,8 +1,8 @@ import 'reflect-metadata'; import { MODULE_METADATA } from '@nestjs/common/constants'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; import { USER_REPOSITORY_TOKEN } from './IdentityPersistenceTokens'; diff --git a/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts index c23b59fc0..f8de747bf 100644 --- a/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryAchievementPersistenceModule.ts @@ -6,9 +6,9 @@ import type { Logger } from '@core/shared/application/Logger'; import { InMemoryAchievementRepository } from '@adapters/identity/persistence/inmemory/InMemoryAchievementRepository'; -import { ACHIEVEMENT_REPOSITORY_TOKEN } from '../achievement/AchievementPersistenceTokens'; import { Achievement, AchievementCategory } from '@core/identity/domain/entities/Achievement'; import { UserAchievement } from '@core/identity/domain/entities/UserAchievement'; +import { ACHIEVEMENT_REPOSITORY_TOKEN } from '../achievement/AchievementPersistenceTokens'; // Adapter to convert between domain repository interface and application use case interface class InMemoryAchievementRepositoryAdapter { diff --git a/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts index 9ca4b2f2f..73c9cbb5c 100644 --- a/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryAnalyticsPersistenceModule.ts @@ -4,18 +4,18 @@ import { LoggingModule } from '../../domain/logging/LoggingModule'; import type { Logger } from '@core/shared/application/Logger'; -import type { IEngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; -import type { IAnalyticsSnapshotRepository } from '@core/analytics/domain/repositories/AnalyticsSnapshotRepository'; import type { IPageViewRepository } from '@core/analytics/application/repositories/PageViewRepository'; +import type { IAnalyticsSnapshotRepository } from '@core/analytics/domain/repositories/AnalyticsSnapshotRepository'; +import type { IEngagementRepository } from '@core/analytics/domain/repositories/EngagementRepository'; import { InMemoryAnalyticsSnapshotRepository } from '@adapters/analytics/persistence/inmemory/InMemoryAnalyticsSnapshotRepository'; import { InMemoryEngagementRepository } from '@adapters/analytics/persistence/inmemory/InMemoryEngagementRepository'; import { InMemoryPageViewRepository } from '@adapters/analytics/persistence/inmemory/InMemoryPageViewRepository'; import { - ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, - ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, - ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, + ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, + ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, + ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, } from '../analytics/AnalyticsPersistenceTokens'; @Module({ diff --git a/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts index 5e3d7299f..6c545eed5 100644 --- a/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryIdentityPersistenceModule.ts @@ -2,17 +2,17 @@ import { Module } from '@nestjs/common'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { Logger } from '@core/shared/application/Logger'; -import type { IPasswordHashingService } from '@core/identity/domain/services/PasswordHashingService'; import type { StoredUser } from '@core/identity/domain/repositories/UserRepository'; +import type { IPasswordHashingService } from '@core/identity/domain/services/PasswordHashingService'; +import type { Logger } from '@core/shared/application/Logger'; import { InMemoryAuthRepository } from '@adapters/identity/persistence/inmemory/InMemoryAuthRepository'; +import { InMemoryCompanyRepository } from '@adapters/identity/persistence/inmemory/InMemoryCompanyRepository'; +import { InMemoryMagicLinkRepository } from '@adapters/identity/persistence/inmemory/InMemoryMagicLinkRepository'; import { InMemoryUserRepository } from '@adapters/identity/persistence/inmemory/InMemoryUserRepository'; import { InMemoryPasswordHashingService } from '@adapters/identity/services/InMemoryPasswordHashingService'; -import { InMemoryMagicLinkRepository } from '@adapters/identity/persistence/inmemory/InMemoryMagicLinkRepository'; -import { InMemoryCompanyRepository } from '@adapters/identity/persistence/inmemory/InMemoryCompanyRepository'; -import { AUTH_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, USER_REPOSITORY_TOKEN, MAGIC_LINK_REPOSITORY_TOKEN, COMPANY_REPOSITORY_TOKEN } from '../identity/IdentityPersistenceTokens'; +import { AUTH_REPOSITORY_TOKEN, COMPANY_REPOSITORY_TOKEN, MAGIC_LINK_REPOSITORY_TOKEN, PASSWORD_HASHING_SERVICE_TOKEN, USER_REPOSITORY_TOKEN } from '../identity/IdentityPersistenceTokens'; @Module({ imports: [LoggingModule], diff --git a/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts index 7e726eaee..c208e5884 100644 --- a/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryMediaPersistenceModule.ts @@ -5,12 +5,12 @@ import { LoggingModule } from '../../domain/logging/LoggingModule'; import type { Logger } from '@core/shared/application/Logger'; import type { IAvatarGenerationRepository } from '@core/media/domain/repositories/AvatarGenerationRepository'; -import type { IMediaRepository } from '@core/media/domain/repositories/MediaRepository'; import type { IAvatarRepository } from '@core/media/domain/repositories/AvatarRepository'; +import type { IMediaRepository } from '@core/media/domain/repositories/MediaRepository'; import { InMemoryAvatarGenerationRepository } from '@adapters/media/persistence/inmemory/InMemoryAvatarGenerationRepository'; -import { AVATAR_GENERATION_REPOSITORY_TOKEN, MEDIA_REPOSITORY_TOKEN, AVATAR_REPOSITORY_TOKEN } from '../media/MediaPersistenceTokens'; +import { AVATAR_GENERATION_REPOSITORY_TOKEN, AVATAR_REPOSITORY_TOKEN, MEDIA_REPOSITORY_TOKEN } from '../media/MediaPersistenceTokens'; // Mock implementations for Media and Avatar repositories (inmemory only has AvatarGeneration) class MockMediaRepository implements IMediaRepository { diff --git a/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts index 94c07b108..f81598fcd 100644 --- a/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryNotificationsPersistenceModule.ts @@ -4,17 +4,17 @@ import { LoggingModule } from '../../domain/logging/LoggingModule'; import type { Logger } from '@core/shared/application/Logger'; -import type { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; -import type { INotificationPreferenceRepository } from '@core/notifications/domain/repositories/NotificationPreferenceRepository'; -import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; import type { NotificationGatewayRegistry } from '@core/notifications/application/ports/NotificationGateway'; +import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; +import type { INotificationPreferenceRepository } from '@core/notifications/domain/repositories/NotificationPreferenceRepository'; +import type { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; -import { InMemoryNotificationRepository } from '@adapters/notifications/persistence/inmemory/InMemoryNotificationRepository'; import { InMemoryNotificationPreferenceRepository } from '@adapters/notifications/persistence/inmemory/InMemoryNotificationPreferenceRepository'; -import { NotificationServiceAdapter } from '@adapters/notifications/ports/NotificationServiceAdapter'; +import { InMemoryNotificationRepository } from '@adapters/notifications/persistence/inmemory/InMemoryNotificationRepository'; import { InMemoryNotificationGatewayRegistry } from '@adapters/notifications/ports/InMemoryNotificationGatewayRegistry'; +import { NotificationServiceAdapter } from '@adapters/notifications/ports/NotificationServiceAdapter'; -import { NOTIFICATION_REPOSITORY_TOKEN, NOTIFICATION_PREFERENCE_REPOSITORY_TOKEN } from '../notifications/NotificationsPersistenceTokens'; +import { NOTIFICATION_PREFERENCE_REPOSITORY_TOKEN, NOTIFICATION_REPOSITORY_TOKEN } from '../notifications/NotificationsPersistenceTokens'; export const NOTIFICATION_SERVICE_TOKEN = 'INotificationService'; export const NOTIFICATION_GATEWAY_REGISTRY_TOKEN = 'INotificationGatewayRegistry'; diff --git a/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts index 9dab9ff5e..08b9488ca 100644 --- a/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryPaymentsPersistenceModule.ts @@ -4,26 +4,26 @@ import { LoggingModule } from '../../domain/logging/LoggingModule'; import type { Logger } from '@core/shared/application/Logger'; -import type { IPaymentRepository } from '@core/payments/domain/repositories/PaymentRepository'; import type { - IMemberPaymentRepository, - IMembershipFeeRepository, + IMemberPaymentRepository, + IMembershipFeeRepository, } from '@core/payments/domain/repositories/MembershipFeeRepository'; +import type { IPaymentRepository } from '@core/payments/domain/repositories/PaymentRepository'; import type { IPrizeRepository } from '@core/payments/domain/repositories/PrizeRepository'; import type { ITransactionRepository, IWalletRepository } from '@core/payments/domain/repositories/WalletRepository'; -import { InMemoryMembershipFeeRepository, InMemoryMemberPaymentRepository } from '@adapters/payments/persistence/inmemory/InMemoryMembershipFeeRepository'; +import { InMemoryMemberPaymentRepository, InMemoryMembershipFeeRepository } from '@adapters/payments/persistence/inmemory/InMemoryMembershipFeeRepository'; import { InMemoryPaymentRepository } from '@adapters/payments/persistence/inmemory/InMemoryPaymentRepository'; import { InMemoryPrizeRepository } from '@adapters/payments/persistence/inmemory/InMemoryPrizeRepository'; import { InMemoryTransactionRepository, InMemoryWalletRepository } from '@adapters/payments/persistence/inmemory/InMemoryWalletRepository'; import { - PAYMENTS_MEMBER_PAYMENT_REPOSITORY_TOKEN, - PAYMENTS_MEMBERSHIP_FEE_REPOSITORY_TOKEN, - PAYMENTS_PAYMENT_REPOSITORY_TOKEN, - PAYMENTS_PRIZE_REPOSITORY_TOKEN, - PAYMENTS_TRANSACTION_REPOSITORY_TOKEN, - PAYMENTS_WALLET_REPOSITORY_TOKEN, + PAYMENTS_MEMBER_PAYMENT_REPOSITORY_TOKEN, + PAYMENTS_MEMBERSHIP_FEE_REPOSITORY_TOKEN, + PAYMENTS_PAYMENT_REPOSITORY_TOKEN, + PAYMENTS_PRIZE_REPOSITORY_TOKEN, + PAYMENTS_TRANSACTION_REPOSITORY_TOKEN, + PAYMENTS_WALLET_REPOSITORY_TOKEN, } from '../payments/PaymentsPersistenceTokens'; @Module({ diff --git a/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts index 734210ab2..8c80a4056 100644 --- a/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemoryRacingPersistenceModule.ts @@ -5,53 +5,53 @@ import { LoggingModule } from '../../domain/logging/LoggingModule'; import type { Logger } from '@core/shared/application/Logger'; import type { IDriverRepository } from '@core/racing/domain/repositories/DriverRepository'; -import type { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; -import type { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; -import type { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; -import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; +import type { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; +import type { IGameRepository } from '@core/racing/domain/repositories/GameRepository'; import type { ILeagueMembershipRepository } from '@core/racing/domain/repositories/LeagueMembershipRepository'; -import type { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; +import type { ILeagueRepository } from '@core/racing/domain/repositories/LeagueRepository'; +import type { ILeagueScoringConfigRepository } from '@core/racing/domain/repositories/LeagueScoringConfigRepository'; +import type { ILeagueWalletRepository } from '@core/racing/domain/repositories/LeagueWalletRepository'; +import type { IMediaRepository } from '@core/racing/domain/repositories/MediaRepository'; import type { IPenaltyRepository } from '@core/racing/domain/repositories/PenaltyRepository'; import type { IProtestRepository } from '@core/racing/domain/repositories/ProtestRepository'; +import type { IRaceRegistrationRepository } from '@core/racing/domain/repositories/RaceRegistrationRepository'; +import type { IRaceRepository } from '@core/racing/domain/repositories/RaceRepository'; +import type { IResultRepository } from '@core/racing/domain/repositories/ResultRepository'; import type { ISeasonRepository } from '@core/racing/domain/repositories/SeasonRepository'; import type { ISeasonSponsorshipRepository } from '@core/racing/domain/repositories/SeasonSponsorshipRepository'; -import type { ILeagueScoringConfigRepository } from '@core/racing/domain/repositories/LeagueScoringConfigRepository'; -import type { IGameRepository } from '@core/racing/domain/repositories/GameRepository'; -import type { ILeagueWalletRepository } from '@core/racing/domain/repositories/LeagueWalletRepository'; -import type { ITransactionRepository } from '@core/racing/domain/repositories/TransactionRepository'; import type { ISponsorRepository } from '@core/racing/domain/repositories/SponsorRepository'; import type { ISponsorshipPricingRepository } from '@core/racing/domain/repositories/SponsorshipPricingRepository'; import type { ISponsorshipRequestRepository } from '@core/racing/domain/repositories/SponsorshipRequestRepository'; -import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; +import type { IStandingRepository } from '@core/racing/domain/repositories/StandingRepository'; import type { ITeamMembershipRepository } from '@core/racing/domain/repositories/TeamMembershipRepository'; -import type { IDriverStatsRepository } from '@core/racing/domain/repositories/DriverStatsRepository'; +import type { ITeamRepository } from '@core/racing/domain/repositories/TeamRepository'; import type { ITeamStatsRepository } from '@core/racing/domain/repositories/TeamStatsRepository'; -import type { IMediaRepository } from '@core/racing/domain/repositories/MediaRepository'; +import type { ITransactionRepository } from '@core/racing/domain/repositories/TransactionRepository'; import { getPointsSystems } from '@adapters/bootstrap/PointsSystems'; import { InMemoryDriverRepository } from '@adapters/racing/persistence/inmemory/InMemoryDriverRepository'; -import { InMemoryLeagueRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueRepository'; -import { InMemoryRaceRepository } from '@adapters/racing/persistence/inmemory/InMemoryRaceRepository'; -import { InMemoryResultRepository } from '@adapters/racing/persistence/inmemory/InMemoryResultRepository'; -import { InMemoryStandingRepository } from '@adapters/racing/persistence/inmemory/InMemoryStandingRepository'; +import { InMemoryDriverStatsRepository } from '@adapters/racing/persistence/inmemory/InMemoryDriverStatsRepository'; +import { InMemoryGameRepository } from '@adapters/racing/persistence/inmemory/InMemoryGameRepository'; import { InMemoryLeagueMembershipRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueMembershipRepository'; -import { InMemoryRaceRegistrationRepository } from '@adapters/racing/persistence/inmemory/InMemoryRaceRegistrationRepository'; -import { InMemoryTeamRepository } from '@adapters/racing/persistence/inmemory/InMemoryTeamRepository'; -import { InMemoryTeamMembershipRepository } from '@adapters/racing/persistence/inmemory/InMemoryTeamMembershipRepository'; +import { InMemoryLeagueRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueRepository'; +import { InMemoryLeagueScoringConfigRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueScoringConfigRepository'; +import { InMemoryLeagueWalletRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueWalletRepository'; import { InMemoryPenaltyRepository } from '@adapters/racing/persistence/inmemory/InMemoryPenaltyRepository'; import { InMemoryProtestRepository } from '@adapters/racing/persistence/inmemory/InMemoryProtestRepository'; +import { InMemoryRaceRegistrationRepository } from '@adapters/racing/persistence/inmemory/InMemoryRaceRegistrationRepository'; +import { InMemoryRaceRepository } from '@adapters/racing/persistence/inmemory/InMemoryRaceRepository'; +import { InMemoryResultRepository } from '@adapters/racing/persistence/inmemory/InMemoryResultRepository'; import { InMemorySeasonRepository } from '@adapters/racing/persistence/inmemory/InMemorySeasonRepository'; import { InMemorySeasonSponsorshipRepository } from '@adapters/racing/persistence/inmemory/InMemorySeasonSponsorshipRepository'; -import { InMemoryLeagueScoringConfigRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueScoringConfigRepository'; -import { InMemoryGameRepository } from '@adapters/racing/persistence/inmemory/InMemoryGameRepository'; -import { InMemoryLeagueWalletRepository } from '@adapters/racing/persistence/inmemory/InMemoryLeagueWalletRepository'; -import { InMemoryTransactionRepository } from '@adapters/racing/persistence/inmemory/InMemoryTransactionRepository'; import { InMemorySponsorRepository } from '@adapters/racing/persistence/inmemory/InMemorySponsorRepository'; import { InMemorySponsorshipPricingRepository } from '@adapters/racing/persistence/inmemory/InMemorySponsorshipPricingRepository'; import { InMemorySponsorshipRequestRepository } from '@adapters/racing/persistence/inmemory/InMemorySponsorshipRequestRepository'; -import { InMemoryDriverStatsRepository } from '@adapters/racing/persistence/inmemory/InMemoryDriverStatsRepository'; +import { InMemoryStandingRepository } from '@adapters/racing/persistence/inmemory/InMemoryStandingRepository'; +import { InMemoryTeamMembershipRepository } from '@adapters/racing/persistence/inmemory/InMemoryTeamMembershipRepository'; +import { InMemoryTeamRepository } from '@adapters/racing/persistence/inmemory/InMemoryTeamRepository'; import { InMemoryTeamStatsRepository } from '@adapters/racing/persistence/inmemory/InMemoryTeamStatsRepository'; +import { InMemoryTransactionRepository } from '@adapters/racing/persistence/inmemory/InMemoryTransactionRepository'; import { InMemoryMediaRepository } from '@adapters/racing/persistence/media/InMemoryMediaRepository'; export const DRIVER_REPOSITORY_TOKEN = 'IDriverRepository'; diff --git a/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts b/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts index 6b4bfdc95..98c3b6eb4 100644 --- a/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts +++ b/apps/api/src/persistence/inmemory/InMemorySocialPersistenceModule.ts @@ -8,8 +8,8 @@ import type { IFeedRepository } from '@core/social/domain/repositories/FeedRepos import type { ISocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; import { - InMemoryFeedRepository, - InMemorySocialGraphRepository, + InMemoryFeedRepository, + InMemorySocialGraphRepository, } from '@adapters/social/persistence/inmemory/InMemorySocialAndFeed'; import { SOCIAL_FEED_REPOSITORY_TOKEN, SOCIAL_GRAPH_REPOSITORY_TOKEN } from '../social/SocialPersistenceTokens'; diff --git a/apps/api/src/persistence/media/MediaPersistenceModule.test.ts b/apps/api/src/persistence/media/MediaPersistenceModule.test.ts index c69951f29..79d58b0cd 100644 --- a/apps/api/src/persistence/media/MediaPersistenceModule.test.ts +++ b/apps/api/src/persistence/media/MediaPersistenceModule.test.ts @@ -1,11 +1,11 @@ import 'reflect-metadata'; import { MODULE_METADATA } from '@nestjs/common/constants'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; -import { AVATAR_GENERATION_REPOSITORY_TOKEN, MEDIA_REPOSITORY_TOKEN, AVATAR_REPOSITORY_TOKEN } from './MediaPersistenceTokens'; +import { AVATAR_GENERATION_REPOSITORY_TOKEN, AVATAR_REPOSITORY_TOKEN, MEDIA_REPOSITORY_TOKEN } from './MediaPersistenceTokens'; describe('MediaPersistenceModule', () => { const originalEnv = { ...process.env }; diff --git a/apps/api/src/persistence/notifications/NotificationsPersistenceModule.test.ts b/apps/api/src/persistence/notifications/NotificationsPersistenceModule.test.ts index b17dd1f80..e1407a013 100644 --- a/apps/api/src/persistence/notifications/NotificationsPersistenceModule.test.ts +++ b/apps/api/src/persistence/notifications/NotificationsPersistenceModule.test.ts @@ -1,11 +1,11 @@ import 'reflect-metadata'; import { MODULE_METADATA } from '@nestjs/common/constants'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; -import { NOTIFICATION_REPOSITORY_TOKEN, NOTIFICATION_PREFERENCE_REPOSITORY_TOKEN, NOTIFICATION_SERVICE_TOKEN, NOTIFICATION_GATEWAY_REGISTRY_TOKEN } from './NotificationsPersistenceTokens'; +import { NOTIFICATION_GATEWAY_REGISTRY_TOKEN, NOTIFICATION_PREFERENCE_REPOSITORY_TOKEN, NOTIFICATION_REPOSITORY_TOKEN, NOTIFICATION_SERVICE_TOKEN } from './NotificationsPersistenceTokens'; describe('NotificationsPersistenceModule', () => { const originalEnv = { ...process.env }; diff --git a/apps/api/src/persistence/payments/PaymentsPersistenceModule.test.ts b/apps/api/src/persistence/payments/PaymentsPersistenceModule.test.ts index 9ea58e12c..6c816be3d 100644 --- a/apps/api/src/persistence/payments/PaymentsPersistenceModule.test.ts +++ b/apps/api/src/persistence/payments/PaymentsPersistenceModule.test.ts @@ -1,8 +1,8 @@ import 'reflect-metadata'; import { MODULE_METADATA } from '@nestjs/common/constants'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; import { PAYMENTS_WALLET_REPOSITORY_TOKEN } from './PaymentsPersistenceTokens'; diff --git a/apps/api/src/persistence/postgres/PostgresAchievementPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresAchievementPersistenceModule.ts index ba9adfc6a..50640aa62 100644 --- a/apps/api/src/persistence/postgres/PostgresAchievementPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresAchievementPersistenceModule.ts @@ -4,12 +4,12 @@ import type { DataSource } from 'typeorm'; import { AchievementOrmEntity } from '@adapters/achievement/persistence/typeorm/entities/AchievementOrmEntity'; import { UserAchievementOrmEntity } from '@adapters/achievement/persistence/typeorm/entities/UserAchievementOrmEntity'; -import { TypeOrmAchievementRepository } from '@adapters/achievement/persistence/typeorm/repositories/TypeOrmAchievementRepository'; import { AchievementOrmMapper } from '@adapters/achievement/persistence/typeorm/mappers/AchievementOrmMapper'; +import { TypeOrmAchievementRepository } from '@adapters/achievement/persistence/typeorm/repositories/TypeOrmAchievementRepository'; -import { ACHIEVEMENT_REPOSITORY_TOKEN } from '../achievement/AchievementPersistenceTokens'; import { Achievement, AchievementCategory } from '@core/identity/domain/entities/Achievement'; import { UserAchievement } from '@core/identity/domain/entities/UserAchievement'; +import { ACHIEVEMENT_REPOSITORY_TOKEN } from '../achievement/AchievementPersistenceTokens'; // Adapter to convert between domain repository interface and application use case interface class AchievementRepositoryAdapter { diff --git a/apps/api/src/persistence/postgres/PostgresAdminPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresAdminPersistenceModule.ts index 02eaf5c98..44dd0c16d 100644 --- a/apps/api/src/persistence/postgres/PostgresAdminPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresAdminPersistenceModule.ts @@ -3,8 +3,8 @@ import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; import { AdminUserOrmEntity } from '@core/admin/infrastructure/typeorm/entities/AdminUserOrmEntity'; -import { TypeOrmAdminUserRepository } from '@core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository'; import { AdminUserOrmMapper } from '@core/admin/infrastructure/typeorm/mappers/AdminUserOrmMapper'; +import { TypeOrmAdminUserRepository } from '@core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository'; import { ADMIN_USER_REPOSITORY_TOKEN } from '../admin/AdminPersistenceTokens'; diff --git a/apps/api/src/persistence/postgres/PostgresAnalyticsPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresAnalyticsPersistenceModule.ts index 9df1d6865..7fd572067 100644 --- a/apps/api/src/persistence/postgres/PostgresAnalyticsPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresAnalyticsPersistenceModule.ts @@ -4,9 +4,9 @@ import type { DataSource } from 'typeorm'; import { LoggingModule } from '../../domain/logging/LoggingModule'; import { - ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, - ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, - ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, + ANALYTICS_ENGAGEMENT_REPOSITORY_TOKEN, + ANALYTICS_PAGE_VIEW_REPOSITORY_TOKEN, + ANALYTICS_SNAPSHOT_REPOSITORY_TOKEN, } from '../analytics/AnalyticsPersistenceTokens'; import { AnalyticsSnapshotOrmEntity } from '@adapters/analytics/persistence/typeorm/entities/AnalyticsSnapshotOrmEntity'; diff --git a/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts index 7193ac6c0..ba0cd2a2b 100644 --- a/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresIdentityPersistenceModule.ts @@ -1,25 +1,25 @@ +import type { Logger } from '@core/shared/application/Logger'; import { Module } from '@nestjs/common'; import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; -import type { Logger } from '@core/shared/application/Logger'; -import { UserOrmEntity } from '@adapters/identity/persistence/typeorm/entities/UserOrmEntity'; import { CompanyOrmEntity } from '@adapters/identity/persistence/typeorm/entities/CompanyOrmEntity'; import { PasswordResetRequestOrmEntity } from '@adapters/identity/persistence/typeorm/entities/PasswordResetRequestOrmEntity'; -import { TypeOrmAuthRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmAuthRepository'; -import { TypeOrmUserRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmUserRepository'; -import { TypeOrmMagicLinkRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmMagicLinkRepository'; -import { TypeOrmCompanyRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmCompanyRepository'; -import { UserOrmMapper } from '@adapters/identity/persistence/typeorm/mappers/UserOrmMapper'; +import { UserOrmEntity } from '@adapters/identity/persistence/typeorm/entities/UserOrmEntity'; import { CompanyOrmMapper } from '@adapters/identity/persistence/typeorm/mappers/CompanyOrmMapper'; +import { UserOrmMapper } from '@adapters/identity/persistence/typeorm/mappers/UserOrmMapper'; +import { TypeOrmAuthRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmAuthRepository'; +import { TypeOrmCompanyRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmCompanyRepository'; +import { TypeOrmMagicLinkRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmMagicLinkRepository'; +import { TypeOrmUserRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmUserRepository'; import { InMemoryPasswordHashingService } from '@adapters/identity/services/InMemoryPasswordHashingService'; import { - AUTH_REPOSITORY_TOKEN, - PASSWORD_HASHING_SERVICE_TOKEN, - USER_REPOSITORY_TOKEN, - MAGIC_LINK_REPOSITORY_TOKEN, - COMPANY_REPOSITORY_TOKEN, + AUTH_REPOSITORY_TOKEN, + COMPANY_REPOSITORY_TOKEN, + MAGIC_LINK_REPOSITORY_TOKEN, + PASSWORD_HASHING_SERVICE_TOKEN, + USER_REPOSITORY_TOKEN, } from '../identity/IdentityPersistenceTokens'; const typeOrmFeatureImports = [TypeOrmModule.forFeature([UserOrmEntity, CompanyOrmEntity, PasswordResetRequestOrmEntity])]; diff --git a/apps/api/src/persistence/postgres/PostgresMediaPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresMediaPersistenceModule.ts index 6173c7904..7f69ff680 100644 --- a/apps/api/src/persistence/postgres/PostgresMediaPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresMediaPersistenceModule.ts @@ -2,22 +2,22 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; -import { MediaOrmEntity } from '@adapters/media/persistence/typeorm/entities/MediaOrmEntity'; -import { AvatarOrmEntity } from '@adapters/media/persistence/typeorm/entities/AvatarOrmEntity'; import { AvatarGenerationRequestOrmEntity } from '@adapters/media/persistence/typeorm/entities/AvatarGenerationRequestOrmEntity'; +import { AvatarOrmEntity } from '@adapters/media/persistence/typeorm/entities/AvatarOrmEntity'; +import { MediaOrmEntity } from '@adapters/media/persistence/typeorm/entities/MediaOrmEntity'; -import { TypeOrmMediaRepository } from '@adapters/media/persistence/typeorm/repositories/TypeOrmMediaRepository'; -import { TypeOrmAvatarRepository } from '@adapters/media/persistence/typeorm/repositories/TypeOrmAvatarRepository'; import { TypeOrmAvatarGenerationRepository } from '@adapters/media/persistence/typeorm/repositories/TypeOrmAvatarGenerationRepository'; +import { TypeOrmAvatarRepository } from '@adapters/media/persistence/typeorm/repositories/TypeOrmAvatarRepository'; +import { TypeOrmMediaRepository } from '@adapters/media/persistence/typeorm/repositories/TypeOrmMediaRepository'; -import { MediaOrmMapper } from '@adapters/media/persistence/typeorm/mappers/MediaOrmMapper'; -import { AvatarOrmMapper } from '@adapters/media/persistence/typeorm/mappers/AvatarOrmMapper'; import { AvatarGenerationRequestOrmMapper } from '@adapters/media/persistence/typeorm/mappers/AvatarGenerationRequestOrmMapper'; +import { AvatarOrmMapper } from '@adapters/media/persistence/typeorm/mappers/AvatarOrmMapper'; +import { MediaOrmMapper } from '@adapters/media/persistence/typeorm/mappers/MediaOrmMapper'; import { - AVATAR_GENERATION_REPOSITORY_TOKEN, - MEDIA_REPOSITORY_TOKEN, - AVATAR_REPOSITORY_TOKEN, + AVATAR_GENERATION_REPOSITORY_TOKEN, + AVATAR_REPOSITORY_TOKEN, + MEDIA_REPOSITORY_TOKEN, } from '../media/MediaPersistenceTokens'; const typeOrmFeatureImports = [ diff --git a/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts index 1f92df040..fd89b49ca 100644 --- a/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresNotificationsPersistenceModule.ts @@ -2,25 +2,25 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; -import type { Logger } from '@core/shared/application/Logger'; -import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; import type { NotificationGatewayRegistry } from '@core/notifications/application/ports/NotificationGateway'; -import type { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; +import type { NotificationService } from '@core/notifications/application/ports/NotificationService'; import type { INotificationPreferenceRepository } from '@core/notifications/domain/repositories/NotificationPreferenceRepository'; +import type { INotificationRepository } from '@core/notifications/domain/repositories/NotificationRepository'; +import type { Logger } from '@core/shared/application/Logger'; import { NotificationOrmEntity } from '@adapters/notifications/persistence/typeorm/entities/NotificationOrmEntity'; import { NotificationPreferenceOrmEntity } from '@adapters/notifications/persistence/typeorm/entities/NotificationPreferenceOrmEntity'; -import { TypeOrmNotificationRepository } from '@adapters/notifications/persistence/typeorm/repositories/TypeOrmNotificationRepository'; import { TypeOrmNotificationPreferenceRepository } from '@adapters/notifications/persistence/typeorm/repositories/TypeOrmNotificationPreferenceRepository'; +import { TypeOrmNotificationRepository } from '@adapters/notifications/persistence/typeorm/repositories/TypeOrmNotificationRepository'; import { NotificationOrmMapper } from '@adapters/notifications/persistence/typeorm/mappers/NotificationOrmMapper'; import { NotificationPreferenceOrmMapper } from '@adapters/notifications/persistence/typeorm/mappers/NotificationPreferenceOrmMapper'; -import { NotificationServiceAdapter } from '@adapters/notifications/ports/NotificationServiceAdapter'; import { InMemoryNotificationGatewayRegistry } from '@adapters/notifications/ports/InMemoryNotificationGatewayRegistry'; +import { NotificationServiceAdapter } from '@adapters/notifications/ports/NotificationServiceAdapter'; -import { NOTIFICATION_REPOSITORY_TOKEN, NOTIFICATION_PREFERENCE_REPOSITORY_TOKEN } from '../notifications/NotificationsPersistenceTokens'; +import { NOTIFICATION_PREFERENCE_REPOSITORY_TOKEN, NOTIFICATION_REPOSITORY_TOKEN } from '../notifications/NotificationsPersistenceTokens'; export const NOTIFICATION_SERVICE_TOKEN = 'INotificationService'; export const NOTIFICATION_GATEWAY_REGISTRY_TOKEN = 'INotificationGatewayRegistry'; diff --git a/apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts index 4a863fd7a..47a7fd56f 100644 --- a/apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresPaymentsPersistenceModule.ts @@ -1,11 +1,11 @@ import { Module } from '@nestjs/common'; -import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; +import { getDataSourceToken, TypeOrmModule } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; import { LoggingModule } from '../../domain/logging/LoggingModule'; -import type { IPaymentRepository } from '@core/payments/domain/repositories/PaymentRepository'; import type { IMemberPaymentRepository, IMembershipFeeRepository } from '@core/payments/domain/repositories/MembershipFeeRepository'; +import type { IPaymentRepository } from '@core/payments/domain/repositories/PaymentRepository'; import type { IPrizeRepository } from '@core/payments/domain/repositories/PrizeRepository'; import type { ITransactionRepository, IWalletRepository } from '@core/payments/domain/repositories/WalletRepository'; @@ -28,12 +28,12 @@ import { TypeOrmPrizeRepository } from '@adapters/payments/persistence/typeorm/r import { TypeOrmTransactionRepository, TypeOrmWalletRepository } from '@adapters/payments/persistence/typeorm/repositories/TypeOrmWalletRepository'; import { - PAYMENTS_MEMBER_PAYMENT_REPOSITORY_TOKEN, - PAYMENTS_MEMBERSHIP_FEE_REPOSITORY_TOKEN, - PAYMENTS_PAYMENT_REPOSITORY_TOKEN, - PAYMENTS_PRIZE_REPOSITORY_TOKEN, - PAYMENTS_TRANSACTION_REPOSITORY_TOKEN, - PAYMENTS_WALLET_REPOSITORY_TOKEN, + PAYMENTS_MEMBER_PAYMENT_REPOSITORY_TOKEN, + PAYMENTS_MEMBERSHIP_FEE_REPOSITORY_TOKEN, + PAYMENTS_PAYMENT_REPOSITORY_TOKEN, + PAYMENTS_PRIZE_REPOSITORY_TOKEN, + PAYMENTS_TRANSACTION_REPOSITORY_TOKEN, + PAYMENTS_WALLET_REPOSITORY_TOKEN, } from '../payments/PaymentsPersistenceTokens'; const typeOrmFeatureImports = [ diff --git a/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts b/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts index 6de4ab2e2..42224fe73 100644 --- a/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts +++ b/apps/api/src/persistence/postgres/PostgresRacingPersistenceModule.ts @@ -1,83 +1,83 @@ import { Module } from '@nestjs/common'; -import { TypeOrmModule, getDataSourceToken, getRepositoryToken } from '@nestjs/typeorm'; +import { getDataSourceToken, getRepositoryToken, TypeOrmModule } from '@nestjs/typeorm'; import type { DataSource, Repository } from 'typeorm'; import { LoggingModule } from '../../domain/logging/LoggingModule'; import { - DRIVER_REPOSITORY_TOKEN, - GAME_REPOSITORY_TOKEN, - LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, - LEAGUE_REPOSITORY_TOKEN, - LEAGUE_SCORING_CONFIG_REPOSITORY_TOKEN, - LEAGUE_WALLET_REPOSITORY_TOKEN, - PENALTY_REPOSITORY_TOKEN, - PROTEST_REPOSITORY_TOKEN, - RACE_REGISTRATION_REPOSITORY_TOKEN, - RACE_REPOSITORY_TOKEN, - RESULT_REPOSITORY_TOKEN, - SEASON_REPOSITORY_TOKEN, - SEASON_SPONSORSHIP_REPOSITORY_TOKEN, - SPONSOR_REPOSITORY_TOKEN, - SPONSORSHIP_PRICING_REPOSITORY_TOKEN, - SPONSORSHIP_REQUEST_REPOSITORY_TOKEN, - STANDING_REPOSITORY_TOKEN, - TEAM_MEMBERSHIP_REPOSITORY_TOKEN, - TEAM_REPOSITORY_TOKEN, - TRANSACTION_REPOSITORY_TOKEN, - DRIVER_STATS_REPOSITORY_TOKEN, - TEAM_STATS_REPOSITORY_TOKEN, - MEDIA_REPOSITORY_TOKEN, + DRIVER_REPOSITORY_TOKEN, + DRIVER_STATS_REPOSITORY_TOKEN, + GAME_REPOSITORY_TOKEN, + LEAGUE_MEMBERSHIP_REPOSITORY_TOKEN, + LEAGUE_REPOSITORY_TOKEN, + LEAGUE_SCORING_CONFIG_REPOSITORY_TOKEN, + LEAGUE_WALLET_REPOSITORY_TOKEN, + MEDIA_REPOSITORY_TOKEN, + PENALTY_REPOSITORY_TOKEN, + PROTEST_REPOSITORY_TOKEN, + RACE_REGISTRATION_REPOSITORY_TOKEN, + RACE_REPOSITORY_TOKEN, + RESULT_REPOSITORY_TOKEN, + SEASON_REPOSITORY_TOKEN, + SEASON_SPONSORSHIP_REPOSITORY_TOKEN, + SPONSOR_REPOSITORY_TOKEN, + SPONSORSHIP_PRICING_REPOSITORY_TOKEN, + SPONSORSHIP_REQUEST_REPOSITORY_TOKEN, + STANDING_REPOSITORY_TOKEN, + TEAM_MEMBERSHIP_REPOSITORY_TOKEN, + TEAM_REPOSITORY_TOKEN, + TEAM_STATS_REPOSITORY_TOKEN, + TRANSACTION_REPOSITORY_TOKEN, } from '../inmemory/InMemoryRacingPersistenceModule'; import { DriverOrmEntity } from '@adapters/racing/persistence/typeorm/entities/DriverOrmEntity'; +import { DriverStatsOrmEntity } from '@adapters/racing/persistence/typeorm/entities/DriverStatsOrmEntity'; import { LeagueMembershipOrmEntity } from '@adapters/racing/persistence/typeorm/entities/LeagueMembershipOrmEntity'; import { LeagueOrmEntity } from '@adapters/racing/persistence/typeorm/entities/LeagueOrmEntity'; import { LeagueScoringConfigOrmEntity } from '@adapters/racing/persistence/typeorm/entities/LeagueScoringConfigOrmEntity'; +import { + GameOrmEntity, + LeagueWalletOrmEntity, + PenaltyOrmEntity, + ProtestOrmEntity, + SeasonSponsorshipOrmEntity, + SponsorOrmEntity, + SponsorshipPricingOrmEntity, + SponsorshipRequestOrmEntity, + TransactionOrmEntity, +} from '@adapters/racing/persistence/typeorm/entities/MissingRacingOrmEntities'; import { RaceOrmEntity } from '@adapters/racing/persistence/typeorm/entities/RaceOrmEntity'; import { RaceRegistrationOrmEntity } from '@adapters/racing/persistence/typeorm/entities/RaceRegistrationOrmEntity'; -import { SeasonOrmEntity } from '@adapters/racing/persistence/typeorm/entities/SeasonOrmEntity'; import { ResultOrmEntity } from '@adapters/racing/persistence/typeorm/entities/ResultOrmEntity'; +import { SeasonOrmEntity } from '@adapters/racing/persistence/typeorm/entities/SeasonOrmEntity'; import { StandingOrmEntity } from '@adapters/racing/persistence/typeorm/entities/StandingOrmEntity'; import { - GameOrmEntity, - LeagueWalletOrmEntity, - PenaltyOrmEntity, - ProtestOrmEntity, - SeasonSponsorshipOrmEntity, - SponsorOrmEntity, - SponsorshipPricingOrmEntity, - SponsorshipRequestOrmEntity, - TransactionOrmEntity, -} from '@adapters/racing/persistence/typeorm/entities/MissingRacingOrmEntities'; -import { - TeamJoinRequestOrmEntity, - TeamMembershipOrmEntity, - TeamOrmEntity, + TeamJoinRequestOrmEntity, + TeamMembershipOrmEntity, + TeamOrmEntity, } from '@adapters/racing/persistence/typeorm/entities/TeamOrmEntities'; import { TeamStatsOrmEntity } from '@adapters/racing/persistence/typeorm/entities/TeamStatsOrmEntity'; -import { DriverStatsOrmEntity } from '@adapters/racing/persistence/typeorm/entities/DriverStatsOrmEntity'; +import { + TypeOrmGameRepository, + TypeOrmLeagueWalletRepository, + TypeOrmSeasonSponsorshipRepository, + TypeOrmSponsorRepository, + TypeOrmSponsorshipPricingRepository, + TypeOrmSponsorshipRequestRepository, + TypeOrmTransactionRepository, +} from '@adapters/racing/persistence/typeorm/repositories/CommerceTypeOrmRepositories'; +import { TypeOrmPenaltyRepository, TypeOrmProtestRepository } from '@adapters/racing/persistence/typeorm/repositories/StewardingTypeOrmRepositories'; +import { TypeOrmTeamMembershipRepository, TypeOrmTeamRepository } from '@adapters/racing/persistence/typeorm/repositories/TeamTypeOrmRepositories'; import { TypeOrmDriverRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmDriverRepository'; import { TypeOrmLeagueMembershipRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmLeagueMembershipRepository'; import { TypeOrmLeagueRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmLeagueRepository'; import { TypeOrmLeagueScoringConfigRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmLeagueScoringConfigRepository'; import { TypeOrmRaceRegistrationRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmRaceRegistrationRepository'; import { TypeOrmRaceRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmRaceRepository'; -import { TypeOrmSeasonRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmSeasonRepository'; import { TypeOrmResultRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmResultRepository'; +import { TypeOrmSeasonRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmSeasonRepository'; import { TypeOrmStandingRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmStandingRepository'; -import { - TypeOrmGameRepository, - TypeOrmLeagueWalletRepository, - TypeOrmSeasonSponsorshipRepository, - TypeOrmSponsorRepository, - TypeOrmSponsorshipPricingRepository, - TypeOrmSponsorshipRequestRepository, - TypeOrmTransactionRepository, -} from '@adapters/racing/persistence/typeorm/repositories/CommerceTypeOrmRepositories'; -import { TypeOrmPenaltyRepository, TypeOrmProtestRepository } from '@adapters/racing/persistence/typeorm/repositories/StewardingTypeOrmRepositories'; -import { TypeOrmTeamMembershipRepository, TypeOrmTeamRepository } from '@adapters/racing/persistence/typeorm/repositories/TeamTypeOrmRepositories'; // Import TypeORM repositories import { TypeOrmDriverStatsRepository } from '@adapters/racing/persistence/typeorm/repositories/TypeOrmDriverStatsRepository'; @@ -86,31 +86,31 @@ import { TypeOrmTeamStatsRepository } from '@adapters/racing/persistence/typeorm // Import in-memory implementations for new repositories (TypeORM versions not yet implemented) import { InMemoryMediaRepository } from '@adapters/racing/persistence/media/InMemoryMediaRepository'; +import { ChampionshipConfigJsonMapper } from '@adapters/racing/persistence/typeorm/mappers/ChampionshipConfigJsonMapper'; +import { + GameOrmMapper, + LeagueWalletOrmMapper, + SeasonSponsorshipOrmMapper, + SponsorOrmMapper, + SponsorshipPricingOrmMapper, + SponsorshipRequestOrmMapper, + TransactionOrmMapper, +} from '@adapters/racing/persistence/typeorm/mappers/CommerceOrmMappers'; import { DriverOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/DriverOrmMapper'; +import { DriverStatsOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/DriverStatsOrmMapper'; import { LeagueMembershipOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/LeagueMembershipOrmMapper'; import { LeagueOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/LeagueOrmMapper'; -import { RaceRegistrationOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/RaceRegistrationOrmMapper'; -import { RaceOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/RaceOrmMapper'; -import { SeasonOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/SeasonOrmMapper'; -import { ResultOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/ResultOrmMapper'; -import { StandingOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/StandingOrmMapper'; -import { PointsTableJsonMapper } from '@adapters/racing/persistence/typeorm/mappers/PointsTableJsonMapper'; -import { ChampionshipConfigJsonMapper } from '@adapters/racing/persistence/typeorm/mappers/ChampionshipConfigJsonMapper'; import { LeagueScoringConfigOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/LeagueScoringConfigOrmMapper'; -import { - GameOrmMapper, - LeagueWalletOrmMapper, - SeasonSponsorshipOrmMapper, - SponsorOrmMapper, - SponsorshipPricingOrmMapper, - SponsorshipRequestOrmMapper, - TransactionOrmMapper, -} from '@adapters/racing/persistence/typeorm/mappers/CommerceOrmMappers'; import { MoneyOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/MoneyOrmMapper'; +import { PointsTableJsonMapper } from '@adapters/racing/persistence/typeorm/mappers/PointsTableJsonMapper'; +import { RaceOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/RaceOrmMapper'; +import { RaceRegistrationOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/RaceRegistrationOrmMapper'; +import { ResultOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/ResultOrmMapper'; +import { SeasonOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/SeasonOrmMapper'; +import { StandingOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/StandingOrmMapper'; import { PenaltyOrmMapper, ProtestOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/StewardingOrmMappers'; import { TeamMembershipOrmMapper, TeamOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/TeamOrmMappers'; import { TeamStatsOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/TeamStatsOrmMapper'; -import { DriverStatsOrmMapper } from '@adapters/racing/persistence/typeorm/mappers/DriverStatsOrmMapper'; import { getPointsSystems } from '@adapters/bootstrap/PointsSystems'; import type { Logger } from '@core/shared/application/Logger'; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresAnalyticsRepositoriesSlice.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresAnalyticsRepositoriesSlice.int.test.ts index 9c9d47d8b..57275bfa0 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresAnalyticsRepositoriesSlice.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresAnalyticsRepositoriesSlice.int.test.ts @@ -1,21 +1,21 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { PageView } from '@core/analytics/domain/entities/PageView'; -import { PageViewOrmEntity } from '@adapters/analytics/persistence/typeorm/entities/PageViewOrmEntity'; -import { EngagementEventOrmEntity } from '@adapters/analytics/persistence/typeorm/entities/EngagementEventOrmEntity'; import { AnalyticsSnapshotOrmEntity } from '@adapters/analytics/persistence/typeorm/entities/AnalyticsSnapshotOrmEntity'; +import { EngagementEventOrmEntity } from '@adapters/analytics/persistence/typeorm/entities/EngagementEventOrmEntity'; +import { PageViewOrmEntity } from '@adapters/analytics/persistence/typeorm/entities/PageViewOrmEntity'; -import { PageViewOrmMapper } from '@adapters/analytics/persistence/typeorm/mappers/PageViewOrmMapper'; -import { EngagementEventOrmMapper } from '@adapters/analytics/persistence/typeorm/mappers/EngagementEventOrmMapper'; import { AnalyticsSnapshotOrmMapper } from '@adapters/analytics/persistence/typeorm/mappers/AnalyticsSnapshotOrmMapper'; +import { EngagementEventOrmMapper } from '@adapters/analytics/persistence/typeorm/mappers/EngagementEventOrmMapper'; +import { PageViewOrmMapper } from '@adapters/analytics/persistence/typeorm/mappers/PageViewOrmMapper'; -import { TypeOrmPageViewRepository } from '@adapters/analytics/persistence/typeorm/repositories/TypeOrmPageViewRepository'; -import { TypeOrmEngagementRepository } from '@adapters/analytics/persistence/typeorm/repositories/TypeOrmEngagementRepository'; import { TypeOrmAnalyticsSnapshotRepository } from '@adapters/analytics/persistence/typeorm/repositories/TypeOrmAnalyticsSnapshotRepository'; +import { TypeOrmEngagementRepository } from '@adapters/analytics/persistence/typeorm/repositories/TypeOrmEngagementRepository'; +import { TypeOrmPageViewRepository } from '@adapters/analytics/persistence/typeorm/repositories/TypeOrmPageViewRepository'; const databaseUrl = process.env.DATABASE_URL; const describeIfDatabase = databaseUrl ? describe : describe.skip; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresIdentityRatingSlice.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresIdentityRatingSlice.int.test.ts index 4e3a9bf40..22f7e5edb 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresIdentityRatingSlice.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresIdentityRatingSlice.int.test.ts @@ -1,7 +1,7 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { RatingEventOrmEntity } from '@adapters/identity/persistence/typeorm/entities/RatingEventOrmEntity'; import { UserRatingOrmEntity } from '@adapters/identity/persistence/typeorm/entities/UserRatingOrmEntity'; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresIdentityUserRepository.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresIdentityUserRepository.int.test.ts index b4b00e137..4fa012ce0 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresIdentityUserRepository.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresIdentityUserRepository.int.test.ts @@ -1,7 +1,7 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { User } from '@core/identity/domain/entities/User'; import { EmailAddress } from '@core/identity/domain/value-objects/EmailAddress'; @@ -9,9 +9,9 @@ import { PasswordHash } from '@core/identity/domain/value-objects/PasswordHash'; import { UserId } from '@core/identity/domain/value-objects/UserId'; import { UserOrmEntity } from '@adapters/identity/persistence/typeorm/entities/UserOrmEntity'; +import { UserOrmMapper } from '@adapters/identity/persistence/typeorm/mappers/UserOrmMapper'; import { TypeOrmAuthRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmAuthRepository'; import { TypeOrmUserRepository } from '@adapters/identity/persistence/typeorm/repositories/TypeOrmUserRepository'; -import { UserOrmMapper } from '@adapters/identity/persistence/typeorm/mappers/UserOrmMapper'; const databaseUrl = process.env.DATABASE_URL; const describeIfDatabase = databaseUrl ? describe : describe.skip; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresLeagueScheduleRepositorySlice.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresLeagueScheduleRepositorySlice.int.test.ts index 5e6c85045..0fde6260b 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresLeagueScheduleRepositorySlice.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresLeagueScheduleRepositorySlice.int.test.ts @@ -1,7 +1,7 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { League } from '@core/racing/domain/entities/League'; import { LeagueScoringConfig } from '@core/racing/domain/entities/LeagueScoringConfig'; @@ -17,16 +17,16 @@ import { LeagueScoringConfigOrmEntity } from '../../../../../../adapters/racing/ import { RaceOrmEntity } from '../../../../../../adapters/racing/persistence/typeorm/entities/RaceOrmEntity'; import { SeasonOrmEntity } from '../../../../../../adapters/racing/persistence/typeorm/entities/SeasonOrmEntity'; +import { ChampionshipConfigJsonMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/ChampionshipConfigJsonMapper'; +import { LeagueOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/LeagueOrmMapper'; +import { LeagueScoringConfigOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/LeagueScoringConfigOrmMapper'; +import { PointsTableJsonMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/PointsTableJsonMapper'; +import { RaceOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/RaceOrmMapper'; +import { SeasonOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/SeasonOrmMapper'; import { TypeOrmLeagueRepository } from '../../../../../../adapters/racing/persistence/typeorm/repositories/TypeOrmLeagueRepository'; import { TypeOrmLeagueScoringConfigRepository } from '../../../../../../adapters/racing/persistence/typeorm/repositories/TypeOrmLeagueScoringConfigRepository'; import { TypeOrmRaceRepository } from '../../../../../../adapters/racing/persistence/typeorm/repositories/TypeOrmRaceRepository'; import { TypeOrmSeasonRepository } from '../../../../../../adapters/racing/persistence/typeorm/repositories/TypeOrmSeasonRepository'; -import { LeagueOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/LeagueOrmMapper'; -import { RaceOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/RaceOrmMapper'; -import { SeasonOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/SeasonOrmMapper'; -import { PointsTableJsonMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/PointsTableJsonMapper'; -import { ChampionshipConfigJsonMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/ChampionshipConfigJsonMapper'; -import { LeagueScoringConfigOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/LeagueScoringConfigOrmMapper'; const databaseUrl = process.env.DATABASE_URL; const describeIfDatabase = databaseUrl ? describe : describe.skip; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresPaymentsWalletRepositorySlice.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresPaymentsWalletRepositorySlice.int.test.ts index 9bc171e8d..5fbf38e82 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresPaymentsWalletRepositorySlice.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresPaymentsWalletRepositorySlice.int.test.ts @@ -1,11 +1,11 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { MemberPaymentStatus } from '@core/payments/domain/entities/MemberPayment'; import { MembershipFeeType } from '@core/payments/domain/entities/MembershipFee'; -import { PaymentStatus, PaymentType, PayerType } from '@core/payments/domain/entities/Payment'; +import { PayerType, PaymentStatus, PaymentType } from '@core/payments/domain/entities/Payment'; import { PrizeType } from '@core/payments/domain/entities/Prize'; import { TransactionType } from '@core/payments/domain/entities/Wallet'; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresRacingCommerceSlice.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresRacingCommerceSlice.int.test.ts index 844e089da..eb30a1ebd 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresRacingCommerceSlice.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresRacingCommerceSlice.int.test.ts @@ -1,46 +1,46 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { Game } from '@core/racing/domain/entities/Game'; import { LeagueWallet } from '@core/racing/domain/entities/league-wallet/LeagueWallet'; import { Transaction } from '@core/racing/domain/entities/league-wallet/Transaction'; -import { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; import { SeasonSponsorship } from '@core/racing/domain/entities/season/SeasonSponsorship'; +import { Sponsor } from '@core/racing/domain/entities/sponsor/Sponsor'; import { SponsorshipRequest } from '@core/racing/domain/entities/SponsorshipRequest'; import { Money } from '@core/racing/domain/value-objects/Money'; import { SponsorshipPricing } from '@core/racing/domain/value-objects/SponsorshipPricing'; import { - GameOrmEntity, - LeagueWalletOrmEntity, - SeasonSponsorshipOrmEntity, - SponsorOrmEntity, - SponsorshipPricingOrmEntity, - SponsorshipRequestOrmEntity, - TransactionOrmEntity, + GameOrmEntity, + LeagueWalletOrmEntity, + SeasonSponsorshipOrmEntity, + SponsorOrmEntity, + SponsorshipPricingOrmEntity, + SponsorshipRequestOrmEntity, + TransactionOrmEntity, } from '../../../../../../adapters/racing/persistence/typeorm/entities/MissingRacingOrmEntities'; -import { MoneyOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/MoneyOrmMapper'; import { - GameOrmMapper, - LeagueWalletOrmMapper, - SeasonSponsorshipOrmMapper, - SponsorOrmMapper, - SponsorshipPricingOrmMapper, - SponsorshipRequestOrmMapper, - TransactionOrmMapper, + GameOrmMapper, + LeagueWalletOrmMapper, + SeasonSponsorshipOrmMapper, + SponsorOrmMapper, + SponsorshipPricingOrmMapper, + SponsorshipRequestOrmMapper, + TransactionOrmMapper, } from '../../../../../../adapters/racing/persistence/typeorm/mappers/CommerceOrmMappers'; +import { MoneyOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/MoneyOrmMapper'; import { - TypeOrmGameRepository, - TypeOrmLeagueWalletRepository, - TypeOrmSeasonSponsorshipRepository, - TypeOrmSponsorRepository, - TypeOrmSponsorshipPricingRepository, - TypeOrmSponsorshipRequestRepository, - TypeOrmTransactionRepository, + TypeOrmGameRepository, + TypeOrmLeagueWalletRepository, + TypeOrmSeasonSponsorshipRepository, + TypeOrmSponsorRepository, + TypeOrmSponsorshipPricingRepository, + TypeOrmSponsorshipRequestRepository, + TypeOrmTransactionRepository, } from '../../../../../../adapters/racing/persistence/typeorm/repositories/CommerceTypeOrmRepositories'; const databaseUrl = process.env.DATABASE_URL; diff --git a/apps/api/src/persistence/postgres/typeorm/PostgresRacingTeamsStewardingSlice.int.test.ts b/apps/api/src/persistence/postgres/typeorm/PostgresRacingTeamsStewardingSlice.int.test.ts index e3029dd2a..0a785e59a 100644 --- a/apps/api/src/persistence/postgres/typeorm/PostgresRacingTeamsStewardingSlice.int.test.ts +++ b/apps/api/src/persistence/postgres/typeorm/PostgresRacingTeamsStewardingSlice.int.test.ts @@ -1,33 +1,33 @@ import 'reflect-metadata'; -import { afterAll, beforeAll, describe, expect, it } from 'vitest'; import { DataSource } from 'typeorm'; +import { afterAll, beforeAll, describe, expect, it } from 'vitest'; -import { Team } from '@core/racing/domain/entities/Team'; import { Penalty } from '@core/racing/domain/entities/penalty/Penalty'; import { Protest } from '@core/racing/domain/entities/Protest'; +import { Team } from '@core/racing/domain/entities/Team'; import { - PenaltyOrmEntity, - ProtestOrmEntity, + PenaltyOrmEntity, + ProtestOrmEntity, } from '../../../../../../adapters/racing/persistence/typeorm/entities/MissingRacingOrmEntities'; import { - TeamJoinRequestOrmEntity, - TeamMembershipOrmEntity, - TeamOrmEntity, + TeamJoinRequestOrmEntity, + TeamMembershipOrmEntity, + TeamOrmEntity, } from '../../../../../../adapters/racing/persistence/typeorm/entities/TeamOrmEntities'; -import { TeamMembershipOrmMapper, TeamOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/TeamOrmMappers'; import { PenaltyOrmMapper, ProtestOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/StewardingOrmMappers'; +import { TeamMembershipOrmMapper, TeamOrmMapper } from '../../../../../../adapters/racing/persistence/typeorm/mappers/TeamOrmMappers'; import { - TypeOrmTeamMembershipRepository, - TypeOrmTeamRepository, -} from '../../../../../../adapters/racing/persistence/typeorm/repositories/TeamTypeOrmRepositories'; -import { - TypeOrmPenaltyRepository, - TypeOrmProtestRepository, + TypeOrmPenaltyRepository, + TypeOrmProtestRepository, } from '../../../../../../adapters/racing/persistence/typeorm/repositories/StewardingTypeOrmRepositories'; +import { + TypeOrmTeamMembershipRepository, + TypeOrmTeamRepository, +} from '../../../../../../adapters/racing/persistence/typeorm/repositories/TeamTypeOrmRepositories'; const databaseUrl = process.env.DATABASE_URL; const describeIfDatabase = databaseUrl ? describe : describe.skip; diff --git a/apps/api/src/persistence/racing/RacingPersistenceModule.test.ts b/apps/api/src/persistence/racing/RacingPersistenceModule.test.ts index 21d085624..a64420edd 100644 --- a/apps/api/src/persistence/racing/RacingPersistenceModule.test.ts +++ b/apps/api/src/persistence/racing/RacingPersistenceModule.test.ts @@ -1,8 +1,8 @@ import 'reflect-metadata'; import { MODULE_METADATA } from '@nestjs/common/constants'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; import { LEAGUE_REPOSITORY_TOKEN } from '../inmemory/InMemoryRacingPersistenceModule'; diff --git a/apps/api/src/persistence/social/PostgresSocialPersistence.integration.test.ts b/apps/api/src/persistence/social/PostgresSocialPersistence.integration.test.ts index 1e7620a6f..8bf81de48 100644 --- a/apps/api/src/persistence/social/PostgresSocialPersistence.integration.test.ts +++ b/apps/api/src/persistence/social/PostgresSocialPersistence.integration.test.ts @@ -1,10 +1,10 @@ import 'reflect-metadata'; -import { getDataSourceToken } from '@nestjs/typeorm'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; -import { afterEach, describe, expect, it } from 'vitest'; +import { Test } from '@nestjs/testing'; +import { getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; +import { afterEach, describe, expect, it } from 'vitest'; import { DatabaseModule } from '../../domain/database/DatabaseModule'; import { PostgresSocialPersistenceModule } from '../postgres/PostgresSocialPersistenceModule'; @@ -13,9 +13,9 @@ import { SOCIAL_FEED_REPOSITORY_TOKEN, SOCIAL_GRAPH_REPOSITORY_TOKEN } from './S import type { IFeedRepository } from '@core/social/domain/repositories/FeedRepository'; import type { ISocialGraphRepository } from '@core/social/domain/repositories/SocialGraphRepository'; +import { DriverOrmEntity } from '@adapters/racing/persistence/typeorm/entities/DriverOrmEntity'; import { FeedItemOrmEntity } from '@adapters/social/persistence/typeorm/entities/FeedItemOrmEntity'; import { FriendshipOrmEntity } from '@adapters/social/persistence/typeorm/entities/FriendshipOrmEntity'; -import { DriverOrmEntity } from '@adapters/racing/persistence/typeorm/entities/DriverOrmEntity'; describe('PostgresSocialPersistenceModule (integration)', () => { const shouldRun = Boolean(process.env.DATABASE_URL); diff --git a/apps/api/src/persistence/social/SocialPersistenceModule.test.ts b/apps/api/src/persistence/social/SocialPersistenceModule.test.ts index 7ff840898..c1cec31de 100644 --- a/apps/api/src/persistence/social/SocialPersistenceModule.test.ts +++ b/apps/api/src/persistence/social/SocialPersistenceModule.test.ts @@ -1,8 +1,8 @@ import 'reflect-metadata'; import { MODULE_METADATA } from '@nestjs/common/constants'; -import { Test } from '@nestjs/testing'; import type { TestingModule } from '@nestjs/testing'; +import { Test } from '@nestjs/testing'; import { afterEach, describe, expect, it, vi } from 'vitest'; import { SOCIAL_FEED_REPOSITORY_TOKEN, SOCIAL_GRAPH_REPOSITORY_TOKEN } from './SocialPersistenceTokens'; diff --git a/apps/api/src/persistence/typeorm/TypeOrmAdminPersistenceModule.ts b/apps/api/src/persistence/typeorm/TypeOrmAdminPersistenceModule.ts index a53bc84e0..cc8fd564b 100644 --- a/apps/api/src/persistence/typeorm/TypeOrmAdminPersistenceModule.ts +++ b/apps/api/src/persistence/typeorm/TypeOrmAdminPersistenceModule.ts @@ -3,8 +3,8 @@ import { TypeOrmModule, getDataSourceToken } from '@nestjs/typeorm'; import type { DataSource } from 'typeorm'; import { AdminUserOrmEntity } from '@core/admin/infrastructure/typeorm/entities/AdminUserOrmEntity'; -import { TypeOrmAdminUserRepository } from '@core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository'; import { AdminUserOrmMapper } from '@core/admin/infrastructure/typeorm/mappers/AdminUserOrmMapper'; +import { TypeOrmAdminUserRepository } from '@core/admin/infrastructure/typeorm/repositories/TypeOrmAdminUserRepository'; import { ADMIN_USER_REPOSITORY_TOKEN } from '../admin/AdminPersistenceTokens'; diff --git a/apps/api/src/shared/http/RequestContext.ts b/apps/api/src/shared/http/RequestContext.ts index 2222c249b..4cd631414 100644 --- a/apps/api/src/shared/http/RequestContext.ts +++ b/apps/api/src/shared/http/RequestContext.ts @@ -1,5 +1,5 @@ -import type { Request, Response, NextFunction } from 'express'; import { Injectable, type NestMiddleware } from '@nestjs/common'; +import type { NextFunction, Request, Response } from 'express'; import { requestContextMiddleware } from '@adapters/http/RequestContext';