From 0ce333525c86f0f7b9cb02bf92c3cf960d69adbc Mon Sep 17 00:00:00 2001 From: Dean Wenstrand Date: Mon, 15 Jun 2026 19:33:56 -0700 Subject: [PATCH] Add GetMyDrillRuns query + generated types Co-Authored-By: Claude Opus 4.8 --- src/index.tsx | 97 +++++++++++++++++++++++++++++++++ src/operations/leaderboards.gql | 8 +++ src/schema.gql | 1 + 3 files changed, 106 insertions(+) diff --git a/src/index.tsx b/src/index.tsx index 11cd3c0..13676cd 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -2839,6 +2839,7 @@ export type Query = { getLongestRunsLeaderboard: RunLeaderboardGql; getMakesLeaderboard: CountLeaderboardGql; getMedals: RequestedMedalsGql; + getMyDrillRuns: Array; getOrderedShots: GetShotsResult; getPlayTime: UserPlayTimeGql; getQuotaStatus: QuotaStatusGql; @@ -2930,6 +2931,11 @@ export type QueryGetMedalsArgs = { userId?: InputMaybe; }; +export type QueryGetMyDrillRunsArgs = { + drillTag: Scalars["String"]["input"]; + limit?: Scalars["Int"]["input"]; +}; + export type QueryGetOrderedShotsArgs = { countRespectsLimit?: Scalars["Boolean"]["input"]; filterInput: FilterInput; @@ -4649,6 +4655,21 @@ export type GetDrillRunLeaderboardQuery = { }; }; +export type GetMyDrillRunsQueryVariables = Exact<{ + drillTag: Scalars["String"]["input"]; + limit?: InputMaybe; +}>; + +export type GetMyDrillRunsQuery = { + __typename?: "Query"; + getMyDrillRuns: Array<{ + __typename?: "RunGQL"; + id: number; + runLength: number; + videoId: number; + }>; +}; + export type GetVideoMakePercentageIntervalsQueryVariables = Exact<{ videoId: Scalars["ID"]["input"]; intervalDuration: Scalars["Int"]["input"]; @@ -9722,6 +9743,82 @@ export type GetDrillRunLeaderboardQueryResult = Apollo.QueryResult< GetDrillRunLeaderboardQuery, GetDrillRunLeaderboardQueryVariables >; +export const GetMyDrillRunsDocument = gql` + query GetMyDrillRuns($drillTag: String!, $limit: Int = 50) { + getMyDrillRuns(drillTag: $drillTag, limit: $limit) { + id + runLength + videoId + } + } +`; + +/** + * __useGetMyDrillRunsQuery__ + * + * To run a query within a React component, call `useGetMyDrillRunsQuery` and pass it any options that fit your needs. + * When your component renders, `useGetMyDrillRunsQuery` returns an object from Apollo Client that contains loading, error, and data properties + * you can use to render your UI. + * + * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options; + * + * @example + * const { data, loading, error } = useGetMyDrillRunsQuery({ + * variables: { + * drillTag: // value for 'drillTag' + * limit: // value for 'limit' + * }, + * }); + */ +export function useGetMyDrillRunsQuery( + baseOptions: Apollo.QueryHookOptions< + GetMyDrillRunsQuery, + GetMyDrillRunsQueryVariables + >, +) { + const options = { ...defaultOptions, ...baseOptions }; + return Apollo.useQuery( + GetMyDrillRunsDocument, + options, + ); +} +export function useGetMyDrillRunsLazyQuery( + baseOptions?: Apollo.LazyQueryHookOptions< + GetMyDrillRunsQuery, + GetMyDrillRunsQueryVariables + >, +) { + const options = { ...defaultOptions, ...baseOptions }; + return Apollo.useLazyQuery( + GetMyDrillRunsDocument, + options, + ); +} +export function useGetMyDrillRunsSuspenseQuery( + baseOptions?: Apollo.SuspenseQueryHookOptions< + GetMyDrillRunsQuery, + GetMyDrillRunsQueryVariables + >, +) { + const options = { ...defaultOptions, ...baseOptions }; + return Apollo.useSuspenseQuery< + GetMyDrillRunsQuery, + GetMyDrillRunsQueryVariables + >(GetMyDrillRunsDocument, options); +} +export type GetMyDrillRunsQueryHookResult = ReturnType< + typeof useGetMyDrillRunsQuery +>; +export type GetMyDrillRunsLazyQueryHookResult = ReturnType< + typeof useGetMyDrillRunsLazyQuery +>; +export type GetMyDrillRunsSuspenseQueryHookResult = ReturnType< + typeof useGetMyDrillRunsSuspenseQuery +>; +export type GetMyDrillRunsQueryResult = Apollo.QueryResult< + GetMyDrillRunsQuery, + GetMyDrillRunsQueryVariables +>; export const GetVideoMakePercentageIntervalsDocument = gql` query GetVideoMakePercentageIntervals( $videoId: ID! diff --git a/src/operations/leaderboards.gql b/src/operations/leaderboards.gql index 5a28752..d18c999 100644 --- a/src/operations/leaderboards.gql +++ b/src/operations/leaderboards.gql @@ -60,3 +60,11 @@ query GetDrillRunLeaderboard( totalPlayers } } + +query GetMyDrillRuns($drillTag: String!, $limit: Int = 50) { + getMyDrillRuns(drillTag: $drillTag, limit: $limit) { + id + runLength + videoId + } +} diff --git a/src/schema.gql b/src/schema.gql index 8438740..9587430 100644 --- a/src/schema.gql +++ b/src/schema.gql @@ -36,6 +36,7 @@ type Query { interval: TimeInterval = null limit: Int! = 50 ): DrillRunLeaderboardGQL! + getMyDrillRuns(drillTag: String!, limit: Int! = 50): [RunGQL!]! getMakesLeaderboard( interval: TimeInterval = null when: DateTime = null