Remove type asserting

This commit is contained in:
Chris Parsons 2026-05-05 14:14:33 -07:00
parent c6874f2f1b
commit f46c88824c

View file

@ -64,8 +64,12 @@ function getInitialScoringPreset(season: LoaderSeason) {
return "custom" as const; return "custom" as const;
} }
function hasFantasySeasonId(season: object): boolean {
return "fantasySeasonId" in season && typeof season.fantasySeasonId === "string" && season.fantasySeasonId.length > 0;
}
function findTemplateBrackt(seasons: LoaderSportsSeason[]): LoaderSportsSeason | undefined { function findTemplateBrackt(seasons: LoaderSportsSeason[]): LoaderSportsSeason | undefined {
return seasons.find((ss) => ss.sport.slug === BRACKT_SLUG && !ss.fantasySeasonId); return seasons.find((ss) => ss.sport.slug === BRACKT_SLUG && !hasFantasySeasonId(ss));
} }
function getInitialSelectedSports({ function getInitialSelectedSports({
@ -75,10 +79,10 @@ function getInitialSelectedSports({
season: LoaderSeason; season: LoaderSeason;
allSportsSeasons: LoaderSportsSeason[]; allSportsSeasons: LoaderSportsSeason[];
}) { }) {
const linkedSeasons = (season?.seasonSports?.map((s) => s.sportsSeason) ?? []) as LoaderSportsSeason[]; const linkedSeasons = season?.seasonSports?.map((s) => s.sportsSeason) ?? [];
const linkedIds = linkedSeasons.map((ss) => ss.id); const linkedIds = linkedSeasons.map((ss) => ss.id);
const templateBrackt = findTemplateBrackt(allSportsSeasons); const templateBrackt = findTemplateBrackt(allSportsSeasons);
const privateBrackt = linkedSeasons.find((ss) => ss.sport.slug === BRACKT_SLUG && !!ss.fantasySeasonId); const privateBrackt = linkedSeasons.find((ss) => ss.sport.slug === BRACKT_SLUG && hasFantasySeasonId(ss));
if (templateBrackt && privateBrackt) { if (templateBrackt && privateBrackt) {
return new Set(linkedIds.map((id) => (id === privateBrackt.id ? templateBrackt.id : id))); return new Set(linkedIds.map((id) => (id === privateBrackt.id ? templateBrackt.id : id)));
@ -211,7 +215,7 @@ export default function LeagueSettings({ loaderData, actionData }: Route.Compone
const displaySportsSeasons = (() => { const displaySportsSeasons = (() => {
const templateBrackt = findTemplateBrackt(allSportsSeasons); const templateBrackt = findTemplateBrackt(allSportsSeasons);
if (!templateBrackt) return allSportsSeasons; if (!templateBrackt) return allSportsSeasons;
return allSportsSeasons.filter((ss) => !(ss.sport.slug === BRACKT_SLUG && !!ss.fantasySeasonId)); return allSportsSeasons.filter((ss) => !(ss.sport.slug === BRACKT_SLUG && hasFantasySeasonId(ss)));
})(); })();
useBeforeUnload( useBeforeUnload(