Fix mutation

This commit is contained in:
Kalle
2026-08-16 21:02:49 +03:00
parent 35984ccc2e
commit 74c5059ccf
3 changed files with 7 additions and 10 deletions

View File

@@ -6,17 +6,14 @@ import {
skipTeam,
unskipTeam,
} from "../leaderboards.remote.ts";
import type { LeaderboardsQueryArgs } from "../leaderboards-schemas.ts";
import type { TeamLeaderboardEntry } from "../leaderboards-types.ts";
interface Props {
entry: Pick<TeamLeaderboardEntry, "identifier" | "isSkipped">;
season: number;
/** The query args of the leaderboard the client currently shows, so the mutation can update it single-flight. */
queryArgs: LeaderboardsQueryArgs;
}
let { entry, season, queryArgs }: Props = $props();
let { entry, season }: Props = $props();
const fields = $derived({ season, identifier: entry.identifier });
</script>
@@ -36,7 +33,7 @@ const fields = $derived({ season, identifier: entry.identifier });
{/snippet}
{#if entry.isSkipped}
<MenuItem
onAction={() => unskipTeam(fields).updates(getLeaderboards(queryArgs))}
onAction={() => unskipTeam(fields).updates(getLeaderboards)}
>
{#snippet icon()}<RotateCcw />{/snippet}
Unskip
@@ -44,7 +41,7 @@ const fields = $derived({ season, identifier: entry.identifier });
{:else}
<MenuItem
isDestructive
onAction={() => skipTeam(fields).updates(getLeaderboards(queryArgs))}
onAction={() => skipTeam(fields).updates(getLeaderboards)}
>
{#snippet icon()}<Ban />{/snippet}
Skip

View File

@@ -52,7 +52,7 @@ const showQualificationDividers = $derived(
</div>
{/snippet}
{#snippet staffActions()}
<TeamStaffMenu {entry} {season} {queryArgs} />
<TeamStaffMenu {entry} {season} />
{/snippet}
{@render placementRow({
rank: entry.placementRank,

View File

@@ -6,7 +6,7 @@ import type { weaponCategories } from "@sendou/in-game-lists/weapon-ids";
import { logger } from "@sendou/utils/logger";
import { getUser, requireUser } from "#lib/features/auth/user.server.ts";
import { requireRole } from "#lib/modules/permissions/guards.server.ts";
import { command, query } from "$app/server";
import { command, query, requested } from "$app/server";
import * as Seasons from "../mmr/Seasons.ts";
import * as LeaderboardRepository from "./LeaderboardRepository.server.ts";
import { WEAPON_LEADERBOARD_MAX_SIZE } from "./leaderboards-constants.ts";
@@ -101,7 +101,7 @@ export const skipTeam = command(
);
clearCachedTeamLeaderboards(season);
void getLeaderboards({ type: "TEAM", season }).refresh();
await requested(getLeaderboards, 5).refreshAll();
},
);
@@ -117,6 +117,6 @@ export const unskipTeam = command(
);
clearCachedTeamLeaderboards(season);
void getLeaderboards({ type: "TEAM", season }).refresh();
await requested(getLeaderboards, 5).refreshAll();
},
);