Compare commits
11 Commits
48b647636e
...
dean/feed-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f4c5fcedd6 | ||
| 07ca121a3e | |||
|
|
66fb4d3dcc | ||
| 5293576947 | |||
|
|
0c1afbcc76 | ||
| 655209e1c6 | |||
| c9576cf405 | |||
| 0c0cd7a7bb | |||
|
|
53fa982bcf | ||
|
|
7ec6ec9193 | ||
|
|
0ce333525c |
197
src/index.tsx
197
src/index.tsx
@@ -79,6 +79,12 @@ export enum AlignedIntervalEnum {
|
|||||||
Year = "YEAR",
|
Year = "YEAR",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export type AppleIapSubscriptionOptionsGql = {
|
||||||
|
__typename?: "AppleIapSubscriptionOptionsGQL";
|
||||||
|
enabled: Scalars["Boolean"]["output"];
|
||||||
|
proMonthlyProductId?: Maybe<Scalars["String"]["output"]>;
|
||||||
|
};
|
||||||
|
|
||||||
export type BankFeaturesGql = {
|
export type BankFeaturesGql = {
|
||||||
__typename?: "BankFeaturesGQL";
|
__typename?: "BankFeaturesGQL";
|
||||||
bankAngle: Scalars["Float"]["output"];
|
bankAngle: Scalars["Float"]["output"];
|
||||||
@@ -2746,7 +2752,9 @@ export type PlayerSummaryGql = {
|
|||||||
makePercentage: Scalars["Float"]["output"];
|
makePercentage: Scalars["Float"]["output"];
|
||||||
profileImageUri?: Maybe<Scalars["String"]["output"]>;
|
profileImageUri?: Maybe<Scalars["String"]["output"]>;
|
||||||
representativeFullFrameUrl?: Maybe<Scalars["String"]["output"]>;
|
representativeFullFrameUrl?: Maybe<Scalars["String"]["output"]>;
|
||||||
|
runLengths: Array<Scalars["Int"]["output"]>;
|
||||||
score?: Maybe<Scalars["Int"]["output"]>;
|
score?: Maybe<Scalars["Int"]["output"]>;
|
||||||
|
spinTypeBreakdown: SpinTypeBreakdownGql;
|
||||||
totalShots: Scalars["Int"]["output"];
|
totalShots: Scalars["Int"]["output"];
|
||||||
totalShotsMade: Scalars["Int"]["output"];
|
totalShotsMade: Scalars["Int"]["output"];
|
||||||
userId?: Maybe<Scalars["Int"]["output"]>;
|
userId?: Maybe<Scalars["Int"]["output"]>;
|
||||||
@@ -2839,6 +2847,7 @@ export type Query = {
|
|||||||
getLongestRunsLeaderboard: RunLeaderboardGql;
|
getLongestRunsLeaderboard: RunLeaderboardGql;
|
||||||
getMakesLeaderboard: CountLeaderboardGql;
|
getMakesLeaderboard: CountLeaderboardGql;
|
||||||
getMedals: RequestedMedalsGql;
|
getMedals: RequestedMedalsGql;
|
||||||
|
getMyDrillRuns: Array<RunGql>;
|
||||||
getOrderedShots: GetShotsResult;
|
getOrderedShots: GetShotsResult;
|
||||||
getPlayTime: UserPlayTimeGql;
|
getPlayTime: UserPlayTimeGql;
|
||||||
getQuotaStatus: QuotaStatusGql;
|
getQuotaStatus: QuotaStatusGql;
|
||||||
@@ -2898,6 +2907,10 @@ export type QueryGetDrillRunLeaderboardArgs = {
|
|||||||
drillTag: Scalars["String"]["input"];
|
drillTag: Scalars["String"]["input"];
|
||||||
interval?: InputMaybe<TimeInterval>;
|
interval?: InputMaybe<TimeInterval>;
|
||||||
limit?: Scalars["Int"]["input"];
|
limit?: Scalars["Int"]["input"];
|
||||||
|
pocketSizeMax?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
pocketSizeMin?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
tableSizeMax?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
tableSizeMin?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type QueryGetFeedVideosArgs = {
|
export type QueryGetFeedVideosArgs = {
|
||||||
@@ -2930,6 +2943,11 @@ export type QueryGetMedalsArgs = {
|
|||||||
userId?: InputMaybe<Scalars["Int"]["input"]>;
|
userId?: InputMaybe<Scalars["Int"]["input"]>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type QueryGetMyDrillRunsArgs = {
|
||||||
|
drillTag: Scalars["String"]["input"];
|
||||||
|
limit?: Scalars["Int"]["input"];
|
||||||
|
};
|
||||||
|
|
||||||
export type QueryGetOrderedShotsArgs = {
|
export type QueryGetOrderedShotsArgs = {
|
||||||
countRespectsLimit?: Scalars["Boolean"]["input"];
|
countRespectsLimit?: Scalars["Boolean"]["input"];
|
||||||
filterInput: FilterInput;
|
filterInput: FilterInput;
|
||||||
@@ -3328,6 +3346,13 @@ export type ShotsOrderingComponent =
|
|||||||
videoId: IntOrdering;
|
videoId: IntOrdering;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type SpinTypeBreakdownGql = {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
center: Scalars["Int"]["output"];
|
||||||
|
draw: Scalars["Int"]["output"];
|
||||||
|
follow: Scalars["Int"]["output"];
|
||||||
|
};
|
||||||
|
|
||||||
export type SpinTypeCountsGql = {
|
export type SpinTypeCountsGql = {
|
||||||
__typename?: "SpinTypeCountsGQL";
|
__typename?: "SpinTypeCountsGQL";
|
||||||
center: Scalars["Int"]["output"];
|
center: Scalars["Int"]["output"];
|
||||||
@@ -3375,6 +3400,7 @@ export type StripeProductGql = {
|
|||||||
|
|
||||||
export type StripeSubscriptionOptionsGql = {
|
export type StripeSubscriptionOptionsGql = {
|
||||||
__typename?: "StripeSubscriptionOptionsGQL";
|
__typename?: "StripeSubscriptionOptionsGQL";
|
||||||
|
appleIap: AppleIapSubscriptionOptionsGql;
|
||||||
products: Array<StripeProductGql>;
|
products: Array<StripeProductGql>;
|
||||||
trialPeriodDays?: Maybe<Scalars["Int"]["output"]>;
|
trialPeriodDays?: Maybe<Scalars["Int"]["output"]>;
|
||||||
};
|
};
|
||||||
@@ -3653,6 +3679,7 @@ export type VideoGql = {
|
|||||||
|
|
||||||
export type VideoHistoryGql = {
|
export type VideoHistoryGql = {
|
||||||
__typename?: "VideoHistoryGQL";
|
__typename?: "VideoHistoryGQL";
|
||||||
|
followingCount: Scalars["Int"]["output"];
|
||||||
hasFollowing: Scalars["Boolean"]["output"];
|
hasFollowing: Scalars["Boolean"]["output"];
|
||||||
pageInfo: PageInfoGql;
|
pageInfo: PageInfoGql;
|
||||||
videos: Array<VideoGql>;
|
videos: Array<VideoGql>;
|
||||||
@@ -4271,8 +4298,15 @@ export type GetFeedQuery = {
|
|||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
score?: number | null;
|
score?: number | null;
|
||||||
longestRun: number;
|
longestRun: number;
|
||||||
|
runLengths: Array<number>;
|
||||||
averageDifficulty?: number | null;
|
averageDifficulty?: number | null;
|
||||||
averageTimeBetweenShots?: number | null;
|
averageTimeBetweenShots?: number | null;
|
||||||
|
spinTypeBreakdown: {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
draw: number;
|
||||||
|
center: number;
|
||||||
|
follow: number;
|
||||||
|
};
|
||||||
}>;
|
}>;
|
||||||
currentProcessing?: {
|
currentProcessing?: {
|
||||||
__typename?: "VideoProcessingGQL";
|
__typename?: "VideoProcessingGQL";
|
||||||
@@ -4375,8 +4409,15 @@ export type VideoCardFieldsFragment = {
|
|||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
score?: number | null;
|
score?: number | null;
|
||||||
longestRun: number;
|
longestRun: number;
|
||||||
|
runLengths: Array<number>;
|
||||||
averageDifficulty?: number | null;
|
averageDifficulty?: number | null;
|
||||||
averageTimeBetweenShots?: number | null;
|
averageTimeBetweenShots?: number | null;
|
||||||
|
spinTypeBreakdown: {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
draw: number;
|
||||||
|
center: number;
|
||||||
|
follow: number;
|
||||||
|
};
|
||||||
}>;
|
}>;
|
||||||
currentProcessing?: {
|
currentProcessing?: {
|
||||||
__typename?: "VideoProcessingGQL";
|
__typename?: "VideoProcessingGQL";
|
||||||
@@ -4468,6 +4509,7 @@ export type GetVideoFeedQuery = {
|
|||||||
getFeedVideos: {
|
getFeedVideos: {
|
||||||
__typename?: "VideoHistoryGQL";
|
__typename?: "VideoHistoryGQL";
|
||||||
hasFollowing: boolean;
|
hasFollowing: boolean;
|
||||||
|
followingCount: number;
|
||||||
videos: Array<{
|
videos: Array<{
|
||||||
__typename?: "VideoGQL";
|
__typename?: "VideoGQL";
|
||||||
id: number;
|
id: number;
|
||||||
@@ -4511,8 +4553,15 @@ export type GetVideoFeedQuery = {
|
|||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
score?: number | null;
|
score?: number | null;
|
||||||
longestRun: number;
|
longestRun: number;
|
||||||
|
runLengths: Array<number>;
|
||||||
averageDifficulty?: number | null;
|
averageDifficulty?: number | null;
|
||||||
averageTimeBetweenShots?: number | null;
|
averageTimeBetweenShots?: number | null;
|
||||||
|
spinTypeBreakdown: {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
draw: number;
|
||||||
|
center: number;
|
||||||
|
follow: number;
|
||||||
|
};
|
||||||
}>;
|
}>;
|
||||||
currentProcessing?: {
|
currentProcessing?: {
|
||||||
__typename?: "VideoProcessingGQL";
|
__typename?: "VideoProcessingGQL";
|
||||||
@@ -4620,6 +4669,10 @@ export type GetDrillRunLeaderboardQueryVariables = Exact<{
|
|||||||
drillTag: Scalars["String"]["input"];
|
drillTag: Scalars["String"]["input"];
|
||||||
interval?: InputMaybe<TimeInterval>;
|
interval?: InputMaybe<TimeInterval>;
|
||||||
limit?: InputMaybe<Scalars["Int"]["input"]>;
|
limit?: InputMaybe<Scalars["Int"]["input"]>;
|
||||||
|
tableSizeMin?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
tableSizeMax?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
pocketSizeMin?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
pocketSizeMax?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
export type GetDrillRunLeaderboardQuery = {
|
export type GetDrillRunLeaderboardQuery = {
|
||||||
@@ -4633,6 +4686,11 @@ export type GetDrillRunLeaderboardQuery = {
|
|||||||
id: number;
|
id: number;
|
||||||
runLength: number;
|
runLength: number;
|
||||||
videoId: number;
|
videoId: number;
|
||||||
|
video: {
|
||||||
|
__typename?: "VideoGQL";
|
||||||
|
tableSize: number;
|
||||||
|
pocketSize?: number | null;
|
||||||
|
};
|
||||||
user: {
|
user: {
|
||||||
__typename?: "UserGQL";
|
__typename?: "UserGQL";
|
||||||
id: number;
|
id: number;
|
||||||
@@ -4649,6 +4707,22 @@ export type GetDrillRunLeaderboardQuery = {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type GetMyDrillRunsQueryVariables = Exact<{
|
||||||
|
drillTag: Scalars["String"]["input"];
|
||||||
|
limit?: InputMaybe<Scalars["Int"]["input"]>;
|
||||||
|
}>;
|
||||||
|
|
||||||
|
export type GetMyDrillRunsQuery = {
|
||||||
|
__typename?: "Query";
|
||||||
|
getMyDrillRuns: Array<{
|
||||||
|
__typename?: "RunGQL";
|
||||||
|
id: number;
|
||||||
|
runLength: number;
|
||||||
|
videoId: number;
|
||||||
|
video: { __typename?: "VideoGQL"; createdAt?: any | null };
|
||||||
|
}>;
|
||||||
|
};
|
||||||
|
|
||||||
export type GetVideoMakePercentageIntervalsQueryVariables = Exact<{
|
export type GetVideoMakePercentageIntervalsQueryVariables = Exact<{
|
||||||
videoId: Scalars["ID"]["input"];
|
videoId: Scalars["ID"]["input"];
|
||||||
intervalDuration: Scalars["Int"]["input"];
|
intervalDuration: Scalars["Int"]["input"];
|
||||||
@@ -5129,8 +5203,15 @@ export type PlayerSummaryFieldsFragment = {
|
|||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
score?: number | null;
|
score?: number | null;
|
||||||
longestRun: number;
|
longestRun: number;
|
||||||
|
runLengths: Array<number>;
|
||||||
averageDifficulty?: number | null;
|
averageDifficulty?: number | null;
|
||||||
averageTimeBetweenShots?: number | null;
|
averageTimeBetweenShots?: number | null;
|
||||||
|
spinTypeBreakdown: {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
draw: number;
|
||||||
|
center: number;
|
||||||
|
follow: number;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export type PlayerClusterShotFieldsFragment = {
|
export type PlayerClusterShotFieldsFragment = {
|
||||||
@@ -6254,8 +6335,15 @@ export type GetVideoDetailsQuery = {
|
|||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
score?: number | null;
|
score?: number | null;
|
||||||
longestRun: number;
|
longestRun: number;
|
||||||
|
runLengths: Array<number>;
|
||||||
averageDifficulty?: number | null;
|
averageDifficulty?: number | null;
|
||||||
averageTimeBetweenShots?: number | null;
|
averageTimeBetweenShots?: number | null;
|
||||||
|
spinTypeBreakdown: {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
draw: number;
|
||||||
|
center: number;
|
||||||
|
follow: number;
|
||||||
|
};
|
||||||
}>;
|
}>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -6373,8 +6461,15 @@ export type GetVideoCardQuery = {
|
|||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
score?: number | null;
|
score?: number | null;
|
||||||
longestRun: number;
|
longestRun: number;
|
||||||
|
runLengths: Array<number>;
|
||||||
averageDifficulty?: number | null;
|
averageDifficulty?: number | null;
|
||||||
averageTimeBetweenShots?: number | null;
|
averageTimeBetweenShots?: number | null;
|
||||||
|
spinTypeBreakdown: {
|
||||||
|
__typename?: "SpinTypeBreakdownGQL";
|
||||||
|
draw: number;
|
||||||
|
center: number;
|
||||||
|
follow: number;
|
||||||
|
};
|
||||||
}>;
|
}>;
|
||||||
currentProcessing?: {
|
currentProcessing?: {
|
||||||
__typename?: "VideoProcessingGQL";
|
__typename?: "VideoProcessingGQL";
|
||||||
@@ -7022,6 +7117,12 @@ export const PlayerSummaryFieldsFragmentDoc = gql`
|
|||||||
makePercentage
|
makePercentage
|
||||||
score
|
score
|
||||||
longestRun
|
longestRun
|
||||||
|
runLengths
|
||||||
|
spinTypeBreakdown {
|
||||||
|
draw
|
||||||
|
center
|
||||||
|
follow
|
||||||
|
}
|
||||||
averageDifficulty
|
averageDifficulty
|
||||||
averageTimeBetweenShots
|
averageTimeBetweenShots
|
||||||
}
|
}
|
||||||
@@ -9379,6 +9480,7 @@ export const GetVideoFeedDocument = gql`
|
|||||||
endCursor
|
endCursor
|
||||||
}
|
}
|
||||||
hasFollowing
|
hasFollowing
|
||||||
|
followingCount
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
${VideoCardFieldsFragmentDoc}
|
${VideoCardFieldsFragmentDoc}
|
||||||
@@ -9628,16 +9730,28 @@ export const GetDrillRunLeaderboardDocument = gql`
|
|||||||
$drillTag: String!
|
$drillTag: String!
|
||||||
$interval: TimeInterval
|
$interval: TimeInterval
|
||||||
$limit: Int = 50
|
$limit: Int = 50
|
||||||
|
$tableSizeMin: Float
|
||||||
|
$tableSizeMax: Float
|
||||||
|
$pocketSizeMin: Float
|
||||||
|
$pocketSizeMax: Float
|
||||||
) {
|
) {
|
||||||
getDrillRunLeaderboard(
|
getDrillRunLeaderboard(
|
||||||
drillTag: $drillTag
|
drillTag: $drillTag
|
||||||
interval: $interval
|
interval: $interval
|
||||||
limit: $limit
|
limit: $limit
|
||||||
|
tableSizeMin: $tableSizeMin
|
||||||
|
tableSizeMax: $tableSizeMax
|
||||||
|
pocketSizeMin: $pocketSizeMin
|
||||||
|
pocketSizeMax: $pocketSizeMax
|
||||||
) {
|
) {
|
||||||
entries {
|
entries {
|
||||||
id
|
id
|
||||||
runLength
|
runLength
|
||||||
videoId
|
videoId
|
||||||
|
video {
|
||||||
|
tableSize
|
||||||
|
pocketSize
|
||||||
|
}
|
||||||
user {
|
user {
|
||||||
id
|
id
|
||||||
username
|
username
|
||||||
@@ -9670,6 +9784,10 @@ export const GetDrillRunLeaderboardDocument = gql`
|
|||||||
* drillTag: // value for 'drillTag'
|
* drillTag: // value for 'drillTag'
|
||||||
* interval: // value for 'interval'
|
* interval: // value for 'interval'
|
||||||
* limit: // value for 'limit'
|
* limit: // value for 'limit'
|
||||||
|
* tableSizeMin: // value for 'tableSizeMin'
|
||||||
|
* tableSizeMax: // value for 'tableSizeMax'
|
||||||
|
* pocketSizeMin: // value for 'pocketSizeMin'
|
||||||
|
* pocketSizeMax: // value for 'pocketSizeMax'
|
||||||
* },
|
* },
|
||||||
* });
|
* });
|
||||||
*/
|
*/
|
||||||
@@ -9722,6 +9840,85 @@ export type GetDrillRunLeaderboardQueryResult = Apollo.QueryResult<
|
|||||||
GetDrillRunLeaderboardQuery,
|
GetDrillRunLeaderboardQuery,
|
||||||
GetDrillRunLeaderboardQueryVariables
|
GetDrillRunLeaderboardQueryVariables
|
||||||
>;
|
>;
|
||||||
|
export const GetMyDrillRunsDocument = gql`
|
||||||
|
query GetMyDrillRuns($drillTag: String!, $limit: Int = 50) {
|
||||||
|
getMyDrillRuns(drillTag: $drillTag, limit: $limit) {
|
||||||
|
id
|
||||||
|
runLength
|
||||||
|
videoId
|
||||||
|
video {
|
||||||
|
createdAt
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* __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<GetMyDrillRunsQuery, GetMyDrillRunsQueryVariables>(
|
||||||
|
GetMyDrillRunsDocument,
|
||||||
|
options,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
export function useGetMyDrillRunsLazyQuery(
|
||||||
|
baseOptions?: Apollo.LazyQueryHookOptions<
|
||||||
|
GetMyDrillRunsQuery,
|
||||||
|
GetMyDrillRunsQueryVariables
|
||||||
|
>,
|
||||||
|
) {
|
||||||
|
const options = { ...defaultOptions, ...baseOptions };
|
||||||
|
return Apollo.useLazyQuery<GetMyDrillRunsQuery, GetMyDrillRunsQueryVariables>(
|
||||||
|
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`
|
export const GetVideoMakePercentageIntervalsDocument = gql`
|
||||||
query GetVideoMakePercentageIntervals(
|
query GetVideoMakePercentageIntervals(
|
||||||
$videoId: ID!
|
$videoId: ID!
|
||||||
|
|||||||
@@ -146,5 +146,6 @@ query GetVideoFeed(
|
|||||||
endCursor
|
endCursor
|
||||||
}
|
}
|
||||||
hasFollowing
|
hasFollowing
|
||||||
|
followingCount
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,16 +35,28 @@ query GetDrillRunLeaderboard(
|
|||||||
$drillTag: String!
|
$drillTag: String!
|
||||||
$interval: TimeInterval
|
$interval: TimeInterval
|
||||||
$limit: Int = 50
|
$limit: Int = 50
|
||||||
|
$tableSizeMin: Float
|
||||||
|
$tableSizeMax: Float
|
||||||
|
$pocketSizeMin: Float
|
||||||
|
$pocketSizeMax: Float
|
||||||
) {
|
) {
|
||||||
getDrillRunLeaderboard(
|
getDrillRunLeaderboard(
|
||||||
drillTag: $drillTag
|
drillTag: $drillTag
|
||||||
interval: $interval
|
interval: $interval
|
||||||
limit: $limit
|
limit: $limit
|
||||||
|
tableSizeMin: $tableSizeMin
|
||||||
|
tableSizeMax: $tableSizeMax
|
||||||
|
pocketSizeMin: $pocketSizeMin
|
||||||
|
pocketSizeMax: $pocketSizeMax
|
||||||
) {
|
) {
|
||||||
entries {
|
entries {
|
||||||
id
|
id
|
||||||
runLength
|
runLength
|
||||||
videoId
|
videoId
|
||||||
|
video {
|
||||||
|
tableSize
|
||||||
|
pocketSize
|
||||||
|
}
|
||||||
user {
|
user {
|
||||||
id
|
id
|
||||||
username
|
username
|
||||||
@@ -60,3 +72,14 @@ query GetDrillRunLeaderboard(
|
|||||||
totalPlayers
|
totalPlayers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
query GetMyDrillRuns($drillTag: String!, $limit: Int = 50) {
|
||||||
|
getMyDrillRuns(drillTag: $drillTag, limit: $limit) {
|
||||||
|
id
|
||||||
|
runLength
|
||||||
|
videoId
|
||||||
|
video {
|
||||||
|
createdAt
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -9,6 +9,12 @@ fragment PlayerSummaryFields on PlayerSummaryGQL {
|
|||||||
makePercentage
|
makePercentage
|
||||||
score
|
score
|
||||||
longestRun
|
longestRun
|
||||||
|
runLengths
|
||||||
|
spinTypeBreakdown {
|
||||||
|
draw
|
||||||
|
center
|
||||||
|
follow
|
||||||
|
}
|
||||||
averageDifficulty
|
averageDifficulty
|
||||||
averageTimeBetweenShots
|
averageTimeBetweenShots
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,12 @@ type Query {
|
|||||||
drillTag: String!
|
drillTag: String!
|
||||||
interval: TimeInterval = null
|
interval: TimeInterval = null
|
||||||
limit: Int! = 50
|
limit: Int! = 50
|
||||||
|
tableSizeMin: Float = null
|
||||||
|
tableSizeMax: Float = null
|
||||||
|
pocketSizeMin: Float = null
|
||||||
|
pocketSizeMax: Float = null
|
||||||
): DrillRunLeaderboardGQL!
|
): DrillRunLeaderboardGQL!
|
||||||
|
getMyDrillRuns(drillTag: String!, limit: Int! = 50): [RunGQL!]!
|
||||||
getMakesLeaderboard(
|
getMakesLeaderboard(
|
||||||
interval: TimeInterval = null
|
interval: TimeInterval = null
|
||||||
when: DateTime = null
|
when: DateTime = null
|
||||||
@@ -683,10 +688,18 @@ type PlayerSummaryGQL {
|
|||||||
makePercentage: Float!
|
makePercentage: Float!
|
||||||
score: Int
|
score: Int
|
||||||
longestRun: Int!
|
longestRun: Int!
|
||||||
|
runLengths: [Int!]!
|
||||||
|
spinTypeBreakdown: SpinTypeBreakdownGQL!
|
||||||
averageDifficulty: Float
|
averageDifficulty: Float
|
||||||
averageTimeBetweenShots: Float
|
averageTimeBetweenShots: Float
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type SpinTypeBreakdownGQL {
|
||||||
|
draw: Int!
|
||||||
|
center: Int!
|
||||||
|
follow: Int!
|
||||||
|
}
|
||||||
|
|
||||||
type DeployedConfigGQL {
|
type DeployedConfigGQL {
|
||||||
allowNewUsers: Boolean!
|
allowNewUsers: Boolean!
|
||||||
firebase: Boolean!
|
firebase: Boolean!
|
||||||
@@ -719,6 +732,7 @@ type VideoHistoryGQL {
|
|||||||
videos: [VideoGQL!]!
|
videos: [VideoGQL!]!
|
||||||
pageInfo: PageInfoGQL!
|
pageInfo: PageInfoGQL!
|
||||||
hasFollowing: Boolean!
|
hasFollowing: Boolean!
|
||||||
|
followingCount: Int!
|
||||||
}
|
}
|
||||||
|
|
||||||
type PageInfoGQL {
|
type PageInfoGQL {
|
||||||
@@ -996,6 +1010,7 @@ type UserRelationship {
|
|||||||
type StripeSubscriptionOptionsGQL {
|
type StripeSubscriptionOptionsGQL {
|
||||||
products: [StripeProductGQL!]!
|
products: [StripeProductGQL!]!
|
||||||
trialPeriodDays: Int
|
trialPeriodDays: Int
|
||||||
|
appleIap: AppleIapSubscriptionOptionsGQL!
|
||||||
}
|
}
|
||||||
|
|
||||||
type StripeProductGQL {
|
type StripeProductGQL {
|
||||||
@@ -1016,6 +1031,11 @@ type StripePriceGQL {
|
|||||||
active: Boolean!
|
active: Boolean!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AppleIapSubscriptionOptionsGQL {
|
||||||
|
enabled: Boolean!
|
||||||
|
proMonthlyProductId: String
|
||||||
|
}
|
||||||
|
|
||||||
type UserSubscriptionStatusGQL {
|
type UserSubscriptionStatusGQL {
|
||||||
hasActiveSubscription: Boolean!
|
hasActiveSubscription: Boolean!
|
||||||
entitlementSource: EntitlementSourceTypeEnum
|
entitlementSource: EntitlementSourceTypeEnum
|
||||||
|
|||||||
Reference in New Issue
Block a user