File tree Expand file tree Collapse file tree 6 files changed +27
-43
lines changed Expand file tree Collapse file tree 6 files changed +27
-43
lines changed Original file line number Diff line number Diff line change @@ -6,18 +6,12 @@ import { getMetadataAsJSON } from "utils/metadata";
6
6
const initialAppearanceData = getMetadataAsJSON < AppearanceConfig > ( "appearance" ) ;
7
7
const appearanceConfigKey = [ "appearance" ] as const ;
8
8
9
- export const appearance = ( queryClient : QueryClient ) => {
9
+ export const appearance = ( ) : UseQueryOptions < AppearanceConfig > => {
10
10
return {
11
- queryKey : appearanceConfigKey ,
12
- queryFn : async ( ) => {
13
- const cachedData = queryClient . getQueryData ( appearanceConfigKey ) ;
14
- if ( cachedData === undefined && initialAppearanceData !== undefined ) {
15
- return initialAppearanceData ;
16
- }
17
-
18
- return API . getAppearance ( ) ;
19
- } ,
20
- } satisfies UseQueryOptions < AppearanceConfig > ;
11
+ queryKey : [ "appearance" ] ,
12
+ initialData : initialAppearanceData ,
13
+ queryFn : ( ) => API . getAppearance ( ) ,
14
+ } ;
21
15
} ;
22
16
23
17
export const updateAppearance = ( queryClient : QueryClient ) => {
Original file line number Diff line number Diff line change 1
- import { QueryClient , type UseQueryOptions } from "react-query" ;
1
+ import { type UseQueryOptions } from "react-query" ;
2
2
import { type BuildInfoResponse } from "api/typesGenerated" ;
3
3
import * as API from "api/api" ;
4
4
import { getMetadataAsJSON } from "utils/metadata" ;
5
5
6
6
const initialBuildInfoData = getMetadataAsJSON < BuildInfoResponse > ( "build-info" ) ;
7
7
const buildInfoKey = [ "buildInfo" ] as const ;
8
8
9
- export const buildInfo = ( queryClient : QueryClient ) => {
9
+ export const buildInfo = ( ) : UseQueryOptions < BuildInfoResponse > => {
10
10
return {
11
11
queryKey : buildInfoKey ,
12
- queryFn : async ( ) => {
13
- const cachedData = queryClient . getQueryData ( buildInfoKey ) ;
14
- if ( cachedData === undefined && initialBuildInfoData !== undefined ) {
15
- return initialBuildInfoData ;
16
- }
17
-
18
- return API . getBuildInfo ( ) ;
19
- } ,
20
- } satisfies UseQueryOptions < BuildInfoResponse > ;
12
+ initialData : initialBuildInfoData ,
13
+ queryFn : ( ) => API . getBuildInfo ( ) ,
14
+ } ;
21
15
} ;
Original file line number Diff line number Diff line change 1
- import { QueryClient } from "react-query" ;
1
+ import { QueryClient , UseQueryOptions } from "react-query" ;
2
2
import * as API from "api/api" ;
3
3
import { Entitlements } from "api/typesGenerated" ;
4
4
import { getMetadataAsJSON } from "utils/metadata" ;
5
5
6
- const ENTITLEMENTS_QUERY_KEY = [ "entitlements" ] ;
6
+ const initialEntitlementsData = getMetadataAsJSON < Entitlements > ( "entitlements" ) ;
7
+ const ENTITLEMENTS_QUERY_KEY = [ "entitlements" ] as const ;
7
8
8
- export const entitlements = ( ) => {
9
+ export const entitlements = ( ) : UseQueryOptions < Entitlements > => {
9
10
return {
10
11
queryKey : ENTITLEMENTS_QUERY_KEY ,
11
- queryFn : async ( ) =>
12
- getMetadataAsJSON < Entitlements > ( "entitlements" ) ?? API . getEntitlements ( ) ,
12
+ queryFn : ( ) => API . getEntitlements ( ) ,
13
+ initialData : initialEntitlementsData ,
13
14
} ;
14
15
} ;
15
16
Original file line number Diff line number Diff line change 1
1
import * as API from "api/api" ;
2
2
import { getMetadataAsJSON } from "utils/metadata" ;
3
3
import { type Experiments } from "api/typesGenerated" ;
4
- import { QueryClient , type UseQueryOptions } from "react-query" ;
4
+ import { type UseQueryOptions } from "react-query" ;
5
5
6
6
const initialExperimentsData = getMetadataAsJSON < Experiments > ( "experiments" ) ;
7
7
const experimentsKey = [ "experiments" ] as const ;
8
8
9
- export const experiments = ( queryClient : QueryClient ) => {
9
+ export const experiments = ( ) : UseQueryOptions < Experiments > => {
10
10
return {
11
11
queryKey : experimentsKey ,
12
- queryFn : async ( ) => {
13
- const cachedData = queryClient . getQueryData ( experimentsKey ) ;
14
- if ( cachedData === undefined && initialExperimentsData !== undefined ) {
15
- return initialExperimentsData ;
16
- }
17
-
18
- return API . getExperiments ( ) ;
19
- } ,
12
+ initialData : initialExperimentsData ,
13
+ queryFn : ( ) => API . getExperiments ( ) ,
20
14
} satisfies UseQueryOptions < Experiments > ;
21
15
} ;
22
16
Original file line number Diff line number Diff line change @@ -91,7 +91,9 @@ export const authMethods = () => {
91
91
92
92
const initialUserData = getMetadataAsJSON < User > ( "user" ) ;
93
93
94
- export const me = ( ) => {
94
+ export const me = ( ) : UseQueryOptions < User > & {
95
+ queryKey : NonNullable < UseQueryOptions < User > [ "queryKey" ] > ;
96
+ } => {
95
97
return {
96
98
queryKey : [ "me" ] ,
97
99
initialData : initialUserData ,
Original file line number Diff line number Diff line change 1
- import { useQuery , useQueryClient } from "react-query" ;
1
+ import { useQuery } from "react-query" ;
2
2
import { buildInfo } from "api/queries/buildInfo" ;
3
3
import { experiments } from "api/queries/experiments" ;
4
4
import { entitlements } from "api/queries/entitlements" ;
@@ -39,11 +39,10 @@ export const DashboardProviderContext = createContext<
39
39
> ( undefined ) ;
40
40
41
41
export const DashboardProvider : FC < PropsWithChildren > = ( { children } ) => {
42
- const queryClient = useQueryClient ( ) ;
43
- const buildInfoQuery = useQuery ( buildInfo ( queryClient ) ) ;
42
+ const buildInfoQuery = useQuery ( buildInfo ( ) ) ;
44
43
const entitlementsQuery = useQuery ( entitlements ( ) ) ;
45
- const experimentsQuery = useQuery ( experiments ( queryClient ) ) ;
46
- const appearanceQuery = useQuery ( appearance ( queryClient ) ) ;
44
+ const experimentsQuery = useQuery ( experiments ( ) ) ;
45
+ const appearanceQuery = useQuery ( appearance ( ) ) ;
47
46
48
47
const isLoading =
49
48
! buildInfoQuery . data ||
You can’t perform that action at this time.
0 commit comments