Added empty build for teams & player in match tile / detail view
All checks were successful
Pull Request Pipeline / lint (pull_request) Successful in 46s
Pull Request Pipeline / test (pull_request) Successful in 47s
Pull Request Pipeline / localizations (pull_request) Successful in 27s

This commit is contained in:
2026-05-23 16:12:58 +02:00
parent 6d17539af2
commit 99c3c3c257
7 changed files with 77 additions and 24 deletions

View File

@@ -96,6 +96,7 @@
"no_license_text_available": "Kein Lizenztext verfügbar",
"no_licenses_found": "Keine Lizenzen gefunden",
"no_matches_created_yet": "Noch keine Spiele erstellt",
"no_players_available": "Keine Spieler:innen verfügbar",
"no_players_created_yet": "Noch keine Spieler:in erstellt",
"no_players_found_with_that_name": "Keine Spieler:in mit diesem Namen gefunden",
"no_players_selected": "Keine Spieler:innen ausgewählt",
@@ -103,6 +104,7 @@
"no_results_entered_yet": "Noch keine Ergebnisse eingetragen",
"no_second_match_available": "Kein zweites Spiel verfügbar",
"no_statistics_available": "Keine Statistiken verfügbar",
"no_teams_available": "Keine Teams verfügbar",
"none": "Kein",
"none_group": "Keine",
"not_available": "Nicht verfügbar",

View File

@@ -96,6 +96,7 @@
"no_license_text_available": "No license text available",
"no_licenses_found": "No licenses found",
"no_matches_created_yet": "No matches created yet",
"no_players_available": "No players available",
"no_players_created_yet": "No players created yet",
"no_players_found_with_that_name": "No players found with that name",
"no_players_selected": "No players selected",
@@ -103,6 +104,7 @@
"no_results_entered_yet": "No results entered yet",
"no_second_match_available": "No second match available",
"no_statistics_available": "No statistics available",
"no_teams_available": "No teams available",
"none": "None",
"none_group": "None",
"not_available": "Not available",

View File

@@ -632,6 +632,12 @@ abstract class AppLocalizations {
/// **'No matches created yet'**
String get no_matches_created_yet;
/// No description provided for @no_players_available.
///
/// In en, this message translates to:
/// **'No players available'**
String get no_players_available;
/// No description provided for @no_players_created_yet.
///
/// In en, this message translates to:
@@ -674,6 +680,12 @@ abstract class AppLocalizations {
/// **'No statistics available'**
String get no_statistics_available;
/// No description provided for @no_teams_available.
///
/// In en, this message translates to:
/// **'No teams available'**
String get no_teams_available;
/// No description provided for @none.
///
/// In en, this message translates to:

View File

@@ -291,6 +291,9 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get no_matches_created_yet => 'Noch keine Spiele erstellt';
@override
String get no_players_available => 'Keine Spieler:innen verfügbar';
@override
String get no_players_created_yet => 'Noch keine Spieler:in erstellt';
@@ -313,6 +316,9 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get no_statistics_available => 'Keine Statistiken verfügbar';
@override
String get no_teams_available => 'Keine Teams verfügbar';
@override
String get none => 'Kein';

View File

@@ -291,6 +291,9 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get no_matches_created_yet => 'No matches created yet';
@override
String get no_players_available => 'No players available';
@override
String get no_players_created_yet => 'No players created yet';
@@ -313,6 +316,9 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get no_statistics_available => 'No statistics available';
@override
String get no_teams_available => 'No teams available';
@override
String get none => 'None';

View File

@@ -162,15 +162,24 @@ class _MatchDetailViewState extends State<MatchDetailView> {
title: loc.teams,
icon: Icons.scoreboard,
horizontalAlignment: CrossAxisAlignment.start,
content: Wrap(
alignment: WrapAlignment.start,
crossAxisAlignment: WrapCrossAlignment.start,
spacing: 12,
runSpacing: 8,
children: (localMatch.teams ?? []).map((team) {
return TeamCard(team: team);
}).toList(),
),
content:
localMatch.teams != null && localMatch.teams!.isNotEmpty
? Wrap(
alignment: WrapAlignment.start,
crossAxisAlignment: WrapCrossAlignment.start,
spacing: 12,
runSpacing: 8,
children: (localMatch.teams ?? []).map((team) {
return TeamCard(team: team);
}).toList(),
)
: Text(
loc.no_teams_available,
style: const TextStyle(
fontSize: 14,
color: CustomTheme.textColor,
),
),
),
] else ...[
// Players
@@ -178,19 +187,26 @@ class _MatchDetailViewState extends State<MatchDetailView> {
title: loc.players,
icon: Icons.people,
horizontalAlignment: CrossAxisAlignment.start,
content: Wrap(
alignment: WrapAlignment.start,
crossAxisAlignment: WrapCrossAlignment.start,
spacing: 12,
runSpacing: 8,
children: localMatch.players.map((player) {
return TextIconTile(
text: player.name,
suffixText: getNameCountText(player),
iconEnabled: false,
);
}).toList(),
),
content: localMatch.players.isNotEmpty
? Wrap(
alignment: WrapAlignment.start,
crossAxisAlignment: WrapCrossAlignment.start,
spacing: 12,
runSpacing: 8,
children: localMatch.players.map((player) {
return TextIconTile(
text: player.name,
suffixText: getNameCountText(player),
);
}).toList(),
)
: Text(
loc.no_players_available,
style: const TextStyle(
fontSize: 14,
color: CustomTheme.textColor,
),
),
),
],
const SizedBox(height: 15),

View File

@@ -221,7 +221,9 @@ class _MatchTileState extends State<MatchTile> {
const SizedBox(height: 12),
],
if (match.teams != null && match.teams!.isNotEmpty) ...[
if (match.teams != null &&
match.teams!.isNotEmpty &&
match.isTeamMatch) ...[
// Team display
Text(
loc.teams,
@@ -275,10 +277,17 @@ class _MatchTileState extends State<MatchTile> {
return TextIconTile(
text: player.name,
suffixText: getNameCountText(player),
iconEnabled: false,
);
}).toList(),
),
] else ...[
Text(
loc.no_players_available,
style: const TextStyle(
fontSize: 14,
color: CustomTheme.hintColor,
),
),
],
],
),