MCPcopy Create free account
hub / github.com/dailydotdev/apps / useSquadTour

Function useSquadTour

packages/shared/src/hooks/useSquadTour.ts:17–46  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

15}
16
17export const useSquadTour = (): UseSquadTour => {
18 const client = useQueryClient();
19 const { data = DEFAULT_SQUAD_TOUR_DATA } = useQuery<SquadTourData>({
20 queryKey: SQUAD_TOUR_KEY,
21 queryFn: () =>
22 client.getQueryData<SquadTourData>(SQUAD_TOUR_KEY) ??
23 DEFAULT_SQUAD_TOUR_DATA,
24 initialData: DEFAULT_SQUAD_TOUR_DATA,
25 });
26
27 const onTourIndexChange = useCallback(
28 (tourIndex: number) => {
29 client.setQueryData<SquadTourData>(SQUAD_TOUR_KEY, { tourIndex });
30 },
31 [client],
32 );
33
34 const onClose = useCallback(() => {
35 onTourIndexChange(-1);
36 }, [onTourIndexChange]);
37
38 return useMemo(
39 () => ({
40 tourIndex: data.tourIndex,
41 onCloseTour: onClose,
42 onTourIndexChange,
43 }),
44 [data, onClose, onTourIndexChange],
45 );
46};

Callers 2

SquadTourModalFunction · 0.90
SquadTourFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected