Skip to content

Commit 3f18a28

Browse files
committed
Added toogle for hide and show the car number
1 parent 2b31581 commit 3f18a28

File tree

7 files changed

+37
-9
lines changed

7 files changed

+37
-9
lines changed

src/app/storage/defaultDashboard.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export const defaultDashboard: DashboardLayout = {
1919
fastestTime: { enabled: true },
2020
backgroundOpacity: { value: 0 },
2121
countryFlags: { enabled: true },
22+
carNumber: { enabled: true },
2223
},
2324
},
2425
{
@@ -64,6 +65,7 @@ export const defaultDashboard: DashboardLayout = {
6465
buffer: 3,
6566
backgroundOpacity: { value: 0 },
6667
countryFlags: { enabled: true },
68+
carNumber: { enabled: true },
6769
},
6870
},
6971
{

src/frontend/components/Settings/sections/RelativeSettings.tsx

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ const defaultConfig: RelativeWidgetSettings['config'] = {
1010
buffer: 3,
1111
background: { opacity: 0 },
1212
countryFlags: { enabled: true },
13+
carNumber: { enabled: true },
1314
};
1415

1516
const migrateConfig = (savedConfig: unknown): RelativeWidgetSettings['config'] => {
@@ -19,6 +20,7 @@ const migrateConfig = (savedConfig: unknown): RelativeWidgetSettings['config'] =
1920
buffer: (config.buffer as { value?: number })?.value ?? 3,
2021
background: { opacity: (config.background as { opacity?: number })?.opacity ?? 0 },
2122
countryFlags: { enabled: (config.countryFlags as { enabled?: boolean })?.enabled ?? true },
23+
carNumber: { enabled: (config.carNumber as { enabled?: boolean })?.enabled ?? true },
2224
};
2325
};
2426

@@ -87,6 +89,15 @@ export const RelativeSettings = () => {
8789
</span>
8890
</div>
8991
</div>
92+
<div className="flex items-center justify-between">
93+
<span className="text-sm text-slate-300">Show Car Number</span>
94+
<ToggleSwitch
95+
enabled={settings.config.carNumber.enabled}
96+
onToggle={(enabled) =>
97+
handleConfigChange({ carNumber: { enabled } })
98+
}
99+
/>
100+
</div>
90101
<div className="flex items-center justify-between">
91102
<span className="text-sm text-slate-300">Show Country Flags</span>
92103
<ToggleSwitch

src/frontend/components/Settings/sections/StandingsSettings.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ const defaultConfig: StandingsWidgetSettings['config'] = {
1414
fastestTime: { enabled: true },
1515
background: { opacity: 0 },
1616
countryFlags: { enabled: true },
17+
carNumber: { enabled: true },
1718
driverStandings: {
1819
buffer: 3,
1920
numNonClassDrivers: 3,
@@ -50,6 +51,9 @@ const migrateConfig = (
5051
countryFlags: {
5152
enabled: (config.countryFlags as { enabled?: boolean })?.enabled ?? true,
5253
},
54+
carNumber: {
55+
enabled: (config.carNumber as { enabled?: boolean })?.enabled ?? true,
56+
},
5357
driverStandings: {
5458
buffer:
5559
(config.driverStandings as { buffer?: number })?.buffer ??
@@ -142,6 +146,15 @@ export const StandingsSettings = () => {
142146
}
143147
/>
144148
</div>
149+
<div className="flex items-center justify-between">
150+
<span className="text-sm text-slate-300">Show Car Number</span>
151+
<ToggleSwitch
152+
enabled={settings.config.carNumber.enabled}
153+
onToggle={(enabled) =>
154+
handleConfigChange({ carNumber: { enabled } })
155+
}
156+
/>
157+
</div>
145158
<div className="flex items-center justify-between">
146159
<span className="text-sm text-slate-300">Show Country Flags</span>
147160
<ToggleSwitch

src/frontend/components/Settings/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ export interface StandingsWidgetSettings extends BaseWidgetSettings {
1212
fastestTime: { enabled: boolean };
1313
background: { opacity: number };
1414
countryFlags: { enabled: boolean };
15+
carNumber: { enabled: boolean };
1516
driverStandings: {
1617
buffer: number;
1718
numNonClassDrivers: number;
@@ -26,6 +27,7 @@ export interface RelativeWidgetSettings extends BaseWidgetSettings {
2627
buffer: number;
2728
background: { opacity: number };
2829
countryFlags: { enabled: boolean };
30+
carNumber: { enabled: boolean };
2931
};
3032
}
3133

src/frontend/components/Standings/Relative.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,9 @@ export const Relative = () => {
4848
return (
4949
<DriverInfoRow
5050
key={result.carIdx}
51-
carIdx={result.carIdx}
51+
carIdx={ result.carIdx}
5252
classColor={result.carClass.color}
53-
carNumber={result.driver?.carNum || ''}
53+
carNumber={config?.carNumber?.enabled ?? true ? result.driver?.carNum || '' : undefined}
5454
name={result.driver?.name || ''}
5555
isPlayer={result.isPlayer}
5656
hasFastestTime={result.hasFastestTime}

src/frontend/components/Standings/Standings.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export const Standings = () => {
4141
key={result.carIdx}
4242
carIdx={result.carIdx}
4343
classColor={result.carClass.color}
44-
carNumber={result.driver?.carNum || ''}
44+
carNumber={settings?.carNumber?.enabled ?? true ? result.driver?.carNum || '' : undefined}
4545
name={result.driver?.name || ''}
4646
isPlayer={result.isPlayer}
4747
hasFastestTime={result.hasFastestTime}

src/frontend/components/Standings/components/DriverInfoRow/DriverInfoRow.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { CountryFlag } from '../CountryFlag/CountryFlag';
88
interface DriverRowInfoProps {
99
carIdx: number;
1010
classColor: number;
11-
carNumber: string;
11+
carNumber?: string;
1212
name: string;
1313
isPlayer: boolean;
1414
hasFastestTime: boolean;
@@ -69,11 +69,11 @@ export const DriverInfoRow = ({
6969
>
7070
{position}
7171
</td>
72-
<td
73-
className={`${getTailwindStyle(classColor).driverIcon} text-white border-l-4 text-right px-1 w-10`}
74-
>
75-
#{carNumber}
76-
</td>
72+
{carNumber && (
73+
<td className={`${getTailwindStyle(classColor).driverIcon} text-white border-l-4 text-right px-1 w-10`}>
74+
#{carNumber}
75+
</td>
76+
)}
7777
<td className={`px-2 py-0.5 w-full`}>
7878
<div className="flex justify-between align-center items-center">
7979
<div className="flex items-center">

0 commit comments

Comments
 (0)