fix data flow issues
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
export interface DriverExtendedProfileProvider {
|
||||
getExtendedProfile(driverId: string): {
|
||||
socialHandles: {
|
||||
platform: 'twitter' | 'youtube' | 'twitch' | 'discord';
|
||||
handle: string;
|
||||
url: string;
|
||||
}[];
|
||||
achievements: {
|
||||
id: string;
|
||||
title: string;
|
||||
description: string;
|
||||
icon: 'trophy' | 'medal' | 'star' | 'crown' | 'target' | 'zap';
|
||||
rarity: 'common' | 'rare' | 'epic' | 'legendary';
|
||||
earnedAt: string;
|
||||
}[];
|
||||
racingStyle: string;
|
||||
favoriteTrack: string;
|
||||
favoriteCar: string;
|
||||
timezone: string;
|
||||
availableHours: string;
|
||||
lookingForTeam: boolean;
|
||||
openToRequests: boolean;
|
||||
} | null;
|
||||
}
|
||||
4
core/racing/application/ports/DriverRatingProvider.ts
Normal file
4
core/racing/application/ports/DriverRatingProvider.ts
Normal file
@@ -0,0 +1,4 @@
|
||||
export interface DriverRatingProvider {
|
||||
getRating(driverId: string): number | null;
|
||||
getRatings(driverIds: string[]): Map<string, number>;
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
export interface WalletTransactionOutputPort {
|
||||
id: string;
|
||||
type: 'sponsorship' | 'membership' | 'withdrawal' | 'prize';
|
||||
description: string;
|
||||
amount: number;
|
||||
fee: number;
|
||||
netAmount: number;
|
||||
date: string;
|
||||
status: 'completed' | 'pending' | 'failed';
|
||||
reference?: string;
|
||||
}
|
||||
|
||||
export interface GetLeagueWalletOutputPort {
|
||||
balance: number;
|
||||
currency: string;
|
||||
totalRevenue: number;
|
||||
totalFees: number;
|
||||
totalWithdrawals: number;
|
||||
pendingPayouts: number;
|
||||
canWithdraw: boolean;
|
||||
withdrawalBlockReason?: string;
|
||||
transactions: WalletTransactionOutputPort[];
|
||||
}
|
||||
@@ -53,5 +53,26 @@ export interface ProfileOverviewOutputPort {
|
||||
avatarUrl: string;
|
||||
}[];
|
||||
};
|
||||
extendedProfile: null;
|
||||
extendedProfile: {
|
||||
socialHandles: {
|
||||
platform: 'twitter' | 'youtube' | 'twitch' | 'discord';
|
||||
handle: string;
|
||||
url: string;
|
||||
}[];
|
||||
achievements: {
|
||||
id: string;
|
||||
title: string;
|
||||
description: string;
|
||||
icon: 'trophy' | 'medal' | 'star' | 'crown' | 'target' | 'zap';
|
||||
rarity: 'common' | 'rare' | 'epic' | 'legendary';
|
||||
earnedAt: string;
|
||||
}[];
|
||||
racingStyle: string;
|
||||
favoriteTrack: string;
|
||||
favoriteCar: string;
|
||||
timezone: string;
|
||||
availableHours: string;
|
||||
lookingForTeam: boolean;
|
||||
openToRequests: boolean;
|
||||
} | null;
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
export interface WithdrawFromLeagueWalletOutputPort {
|
||||
success: boolean;
|
||||
message?: string;
|
||||
}
|
||||
Reference in New Issue
Block a user