Skip to content

Commit b67443e

Browse files
committed
chore: optimise depencencies by extracting prefetch functions to their own module
1 parent 4a1ec41 commit b67443e

4 files changed

Lines changed: 33 additions & 24 deletions

File tree

frontend/src/ts/components/layout/header/Nav.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ import { useQuery } from "@tanstack/solid-query";
22
import { createMemo, JSXElement, Show } from "solid-js";
33

44
import { createEffectOn } from "../../../hooks/effects";
5+
import {
6+
prefetchAboutPage,
7+
prefetchLeaderboardPage,
8+
} from "../../../queries/prefetch";
59
import { getServerConfigurationQueryOptions } from "../../../queries/server-configuration";
610
import {
711
restartTestEvent,
@@ -21,8 +25,6 @@ import { AnimeConditional } from "../../common/anime";
2125
import { Button } from "../../common/Button";
2226
import { NotificationBubble } from "../../common/NotificationBubble";
2327
import { User } from "../../common/User";
24-
import { prefetchAboutPage } from "../../pages/AboutPage";
25-
import { prefetchLeaderboardPage } from "../../pages/leaderboard/LeaderboardPage";
2628
import { AccountMenu } from "./AccountMenu";
2729
import { AccountXpBar } from "./AccountXpBar";
2830

frontend/src/ts/components/pages/AboutPage.tsx

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import { useQuery } from "@tanstack/solid-query";
22
import { For, JSXElement, Show } from "solid-js";
33

44
import { getConfig } from "../../config/store";
5-
import { queryClient } from "../../queries";
65
import {
76
getContributorsQueryOptions,
87
getSpeedHistogramQueryOptions,
@@ -19,13 +18,6 @@ import { ChartJs } from "../common/ChartJs";
1918
import { Fa } from "../common/Fa";
2019
import { H2, H3 } from "../common/Headers";
2120

22-
export function prefetchAboutPage(): void {
23-
void queryClient.prefetchQuery(getContributorsQueryOptions());
24-
void queryClient.prefetchQuery(getSupportersQueryOptions());
25-
void queryClient.prefetchQuery(getTypingStatsQueryOptions());
26-
void queryClient.prefetchQuery(getSpeedHistogramQueryOptions());
27-
}
28-
2921
export function AboutPage(): JSXElement {
3022
const isOpen = () => getActivePage() === "about";
3123

frontend/src/ts/components/pages/leaderboard/LeaderboardPage.tsx

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -285,17 +285,3 @@ export function LeaderboardPage(): JSXElement {
285285
</Show>
286286
);
287287
}
288-
289-
export function prefetchLeaderboardPage(): void {
290-
void queryClient.prefetchQuery(
291-
getLeaderboardQueryOptions({
292-
type: "allTime",
293-
mode: "time",
294-
mode2: "15",
295-
language: "english",
296-
friendsOnly: false,
297-
page: 0,
298-
previous: false,
299-
}),
300-
);
301-
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import { queryClient } from ".";
2+
import {
3+
getContributorsQueryOptions,
4+
getSpeedHistogramQueryOptions,
5+
getSupportersQueryOptions,
6+
getTypingStatsQueryOptions,
7+
} from "./public";
8+
import { getLeaderboardQueryOptions } from "./leaderboards";
9+
10+
export function prefetchAboutPage(): void {
11+
void queryClient.prefetchQuery(getContributorsQueryOptions());
12+
void queryClient.prefetchQuery(getSupportersQueryOptions());
13+
void queryClient.prefetchQuery(getTypingStatsQueryOptions());
14+
void queryClient.prefetchQuery(getSpeedHistogramQueryOptions());
15+
}
16+
17+
export function prefetchLeaderboardPage(): void {
18+
void queryClient.prefetchQuery(
19+
getLeaderboardQueryOptions({
20+
type: "allTime",
21+
mode: "time",
22+
mode2: "15",
23+
language: "english",
24+
friendsOnly: false,
25+
page: 0,
26+
previous: false,
27+
}),
28+
);
29+
}

0 commit comments

Comments
 (0)