Compare commits
26 Commits
kat/named-
...
4f1a4c2cc1
Author | SHA1 | Date | |
---|---|---|---|
4f1a4c2cc1 | |||
8fe84521c3 | |||
7ff60dc9c5 | |||
9f26b5aa0f | |||
70303b9363 | |||
9ee1422d3e | |||
7a9d2545c4 | |||
c561ea20ab | |||
7ce0c058b7 | |||
c399edd882 | |||
32d8cb0d41 | |||
9d912ed21e | |||
0bcfd32b14 | |||
9b27d288da | |||
b0f94f5ea8 | |||
de653ba54c | |||
2657628a54 | |||
cd20cfcb40 | |||
2657a9baf7 | |||
9bb4b7c513 | |||
a5050ed08d | |||
b9e26243e9 | |||
021cd35278 | |||
8dda81236a | |||
c7ff615fe4 | |||
365cbb5f70 |
@@ -1,9 +1,16 @@
|
|||||||
# see: https://www.apollographql.com/docs/react/local-state/managing-state-with-field-policies/
|
# see: https://www.apollographql.com/docs/react/local-state/managing-state-with-field-policies/
|
||||||
directive @client on FIELD
|
directive @client on FIELD
|
||||||
|
|
||||||
|
type SegmentInfo {
|
||||||
|
index: Int!
|
||||||
|
time: Float!
|
||||||
|
}
|
||||||
|
|
||||||
extend type ShotGQL {
|
extend type ShotGQL {
|
||||||
startTime: Float!
|
startTime: Float!
|
||||||
endTime: Float!
|
endTime: Float!
|
||||||
|
startSegment: SegmentInfo!
|
||||||
|
endSegment: SegmentInfo!
|
||||||
}
|
}
|
||||||
|
|
||||||
extend type UploadStreamGQL {
|
extend type UploadStreamGQL {
|
||||||
|
206
src/index.tsx
206
src/index.tsx
@@ -2153,6 +2153,7 @@ export type Mutation = {
|
|||||||
getHlsInitUploadLink: GetUploadLinkReturn;
|
getHlsInitUploadLink: GetUploadLinkReturn;
|
||||||
getProfileImageUploadLink: GetProfileUploadLinkReturn;
|
getProfileImageUploadLink: GetProfileUploadLinkReturn;
|
||||||
getUploadLink: GetUploadLinkReturn;
|
getUploadLink: GetUploadLinkReturn;
|
||||||
|
reactToVideo: Scalars["Boolean"]["output"];
|
||||||
setLoggerLevel: Scalars["Boolean"]["output"];
|
setLoggerLevel: Scalars["Boolean"]["output"];
|
||||||
setSegmentDuration: Scalars["Boolean"]["output"];
|
setSegmentDuration: Scalars["Boolean"]["output"];
|
||||||
unfollowUser: UserGql;
|
unfollowUser: UserGql;
|
||||||
@@ -2217,6 +2218,11 @@ export type MutationGetUploadLinkArgs = {
|
|||||||
videoId: Scalars["Int"]["input"];
|
videoId: Scalars["Int"]["input"];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type MutationReactToVideoArgs = {
|
||||||
|
reaction: ReactionEnum;
|
||||||
|
videoId: Scalars["Int"]["input"];
|
||||||
|
};
|
||||||
|
|
||||||
export type MutationSetLoggerLevelArgs = {
|
export type MutationSetLoggerLevelArgs = {
|
||||||
level: Scalars["String"]["input"];
|
level: Scalars["String"]["input"];
|
||||||
path: Scalars["String"]["input"];
|
path: Scalars["String"]["input"];
|
||||||
@@ -2465,6 +2471,23 @@ export type QueryWaitForArgs = {
|
|||||||
duration: Scalars["Float"]["input"];
|
duration: Scalars["Float"]["input"];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export enum ReactionEnum {
|
||||||
|
Bullseye = "BULLSEYE",
|
||||||
|
Heart = "HEART",
|
||||||
|
Hundred = "HUNDRED",
|
||||||
|
Like = "LIKE",
|
||||||
|
None = "NONE",
|
||||||
|
}
|
||||||
|
|
||||||
|
export type ReactionGql = {
|
||||||
|
__typename?: "ReactionGQL";
|
||||||
|
createdAt?: Maybe<Scalars["DateTime"]["output"]>;
|
||||||
|
reaction: ReactionEnum;
|
||||||
|
updatedAt?: Maybe<Scalars["DateTime"]["output"]>;
|
||||||
|
user: UserGql;
|
||||||
|
videoId: Scalars["Int"]["output"];
|
||||||
|
};
|
||||||
|
|
||||||
export type RequestedMedalsGql = {
|
export type RequestedMedalsGql = {
|
||||||
__typename?: "RequestedMedalsGQL";
|
__typename?: "RequestedMedalsGQL";
|
||||||
dailyMakes50?: Maybe<MedalGql>;
|
dailyMakes50?: Maybe<MedalGql>;
|
||||||
@@ -2556,6 +2579,12 @@ export type SegmentEndFramesGql = {
|
|||||||
segmentEndFrames: Array<Scalars["Int"]["output"]>;
|
segmentEndFrames: Array<Scalars["Int"]["output"]>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type SegmentInfo = {
|
||||||
|
__typename?: "SegmentInfo";
|
||||||
|
index: Scalars["Int"]["output"];
|
||||||
|
time: Scalars["Float"]["output"];
|
||||||
|
};
|
||||||
|
|
||||||
export type SegmentStartTimesGql = {
|
export type SegmentStartTimesGql = {
|
||||||
__typename?: "SegmentStartTimesGQL";
|
__typename?: "SegmentStartTimesGQL";
|
||||||
id: Scalars["Int"]["output"];
|
id: Scalars["Int"]["output"];
|
||||||
@@ -2608,6 +2637,7 @@ export type ShotGql = {
|
|||||||
createdAt?: Maybe<Scalars["DateTime"]["output"]>;
|
createdAt?: Maybe<Scalars["DateTime"]["output"]>;
|
||||||
cueObjectFeatures?: Maybe<CueObjectFeaturesGql>;
|
cueObjectFeatures?: Maybe<CueObjectFeaturesGql>;
|
||||||
endFrame: Scalars["Int"]["output"];
|
endFrame: Scalars["Int"]["output"];
|
||||||
|
endSegment: SegmentInfo;
|
||||||
endTime: Scalars["Float"]["output"];
|
endTime: Scalars["Float"]["output"];
|
||||||
falsePositiveScore?: Maybe<Scalars["Float"]["output"]>;
|
falsePositiveScore?: Maybe<Scalars["Float"]["output"]>;
|
||||||
id: Scalars["Int"]["output"];
|
id: Scalars["Int"]["output"];
|
||||||
@@ -2617,6 +2647,7 @@ export type ShotGql = {
|
|||||||
runFeatures?: Maybe<RunFeaturesGql>;
|
runFeatures?: Maybe<RunFeaturesGql>;
|
||||||
serializedShotPaths?: Maybe<SerializedShotPathsGql>;
|
serializedShotPaths?: Maybe<SerializedShotPathsGql>;
|
||||||
startFrame: Scalars["Int"]["output"];
|
startFrame: Scalars["Int"]["output"];
|
||||||
|
startSegment: SegmentInfo;
|
||||||
startTime: Scalars["Float"]["output"];
|
startTime: Scalars["Float"]["output"];
|
||||||
updatedAt?: Maybe<Scalars["DateTime"]["output"]>;
|
updatedAt?: Maybe<Scalars["DateTime"]["output"]>;
|
||||||
user?: Maybe<UserGql>;
|
user?: Maybe<UserGql>;
|
||||||
@@ -2708,13 +2739,19 @@ export type SuccessfulAddAddShotAnnotationErrors =
|
|||||||
| AddShotAnnotationErrors
|
| AddShotAnnotationErrors
|
||||||
| SuccessfulAdd;
|
| SuccessfulAdd;
|
||||||
|
|
||||||
export type TagGql = {
|
export type TagClassGql = {
|
||||||
__typename?: "TagGQL";
|
__typename?: "TagClassGQL";
|
||||||
group?: Maybe<Scalars["String"]["output"]>;
|
|
||||||
id: Scalars["Int"]["output"];
|
id: Scalars["Int"]["output"];
|
||||||
name: Scalars["String"]["output"];
|
name: Scalars["String"]["output"];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type TagGql = {
|
||||||
|
__typename?: "TagGQL";
|
||||||
|
id: Scalars["Int"]["output"];
|
||||||
|
name: Scalars["String"]["output"];
|
||||||
|
tagClasses?: Maybe<Array<TagClassGql>>;
|
||||||
|
};
|
||||||
|
|
||||||
export type TargetMetricsGql = {
|
export type TargetMetricsGql = {
|
||||||
__typename?: "TargetMetricsGQL";
|
__typename?: "TargetMetricsGQL";
|
||||||
averageDifficulty?: Maybe<Scalars["Float"]["output"]>;
|
averageDifficulty?: Maybe<Scalars["Float"]["output"]>;
|
||||||
@@ -2869,6 +2906,7 @@ export type VideoFilterInput = {
|
|||||||
|
|
||||||
export type VideoGql = {
|
export type VideoGql = {
|
||||||
__typename?: "VideoGQL";
|
__typename?: "VideoGQL";
|
||||||
|
averageDifficulty?: Maybe<Scalars["Float"]["output"]>;
|
||||||
averageTimeBetweenShots?: Maybe<Scalars["Float"]["output"]>;
|
averageTimeBetweenShots?: Maybe<Scalars["Float"]["output"]>;
|
||||||
createdAt?: Maybe<Scalars["DateTime"]["output"]>;
|
createdAt?: Maybe<Scalars["DateTime"]["output"]>;
|
||||||
currentHomography?: Maybe<HomographyInfoGql>;
|
currentHomography?: Maybe<HomographyInfoGql>;
|
||||||
@@ -2884,6 +2922,7 @@ export type VideoGql = {
|
|||||||
owner?: Maybe<UserGql>;
|
owner?: Maybe<UserGql>;
|
||||||
playlist?: Maybe<HlsPlaylistGql>;
|
playlist?: Maybe<HlsPlaylistGql>;
|
||||||
private: Scalars["Boolean"]["output"];
|
private: Scalars["Boolean"]["output"];
|
||||||
|
reactions: Array<ReactionGql>;
|
||||||
screenshotUri?: Maybe<Scalars["String"]["output"]>;
|
screenshotUri?: Maybe<Scalars["String"]["output"]>;
|
||||||
shots: Array<ShotGql>;
|
shots: Array<ShotGql>;
|
||||||
startTime?: Maybe<Scalars["DateTime"]["output"]>;
|
startTime?: Maybe<Scalars["DateTime"]["output"]>;
|
||||||
@@ -2906,6 +2945,7 @@ export type VideoMetadataInput = {
|
|||||||
endStream?: Scalars["Boolean"]["input"];
|
endStream?: Scalars["Boolean"]["input"];
|
||||||
endTime?: InputMaybe<Scalars["DateTime"]["input"]>;
|
endTime?: InputMaybe<Scalars["DateTime"]["input"]>;
|
||||||
framesPerSecond?: InputMaybe<Scalars["Float"]["input"]>;
|
framesPerSecond?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
/** @deprecated `game_type` is deprecated. Use `tags` instead. */
|
||||||
gameType?: InputMaybe<Scalars["String"]["input"]>;
|
gameType?: InputMaybe<Scalars["String"]["input"]>;
|
||||||
lastIntendedSegmentBound?: InputMaybe<Scalars["Int"]["input"]>;
|
lastIntendedSegmentBound?: InputMaybe<Scalars["Int"]["input"]>;
|
||||||
private?: InputMaybe<Scalars["Boolean"]["input"]>;
|
private?: InputMaybe<Scalars["Boolean"]["input"]>;
|
||||||
@@ -2913,6 +2953,8 @@ export type VideoMetadataInput = {
|
|||||||
startTime?: InputMaybe<Scalars["DateTime"]["input"]>;
|
startTime?: InputMaybe<Scalars["DateTime"]["input"]>;
|
||||||
streamSegmentType?: InputMaybe<StreamSegmentTypeEnum>;
|
streamSegmentType?: InputMaybe<StreamSegmentTypeEnum>;
|
||||||
tableSize?: InputMaybe<Scalars["Float"]["input"]>;
|
tableSize?: InputMaybe<Scalars["Float"]["input"]>;
|
||||||
|
/** A list of tags associated with the video. Replace `game_type` */
|
||||||
|
tags?: InputMaybe<Array<VideoTagInput>>;
|
||||||
videoName?: InputMaybe<Scalars["String"]["input"]>;
|
videoName?: InputMaybe<Scalars["String"]["input"]>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -3029,6 +3071,8 @@ export type GetFeedQuery = {
|
|||||||
totalShotsMade: number;
|
totalShotsMade: number;
|
||||||
totalShots: number;
|
totalShots: number;
|
||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
|
averageTimeBetweenShots?: number | null;
|
||||||
|
averageDifficulty?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
startTime?: any | null;
|
startTime?: any | null;
|
||||||
@@ -3083,6 +3127,8 @@ export type VideoCardFieldsFragment = {
|
|||||||
totalShotsMade: number;
|
totalShotsMade: number;
|
||||||
totalShots: number;
|
totalShots: number;
|
||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
|
averageTimeBetweenShots?: number | null;
|
||||||
|
averageDifficulty?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
startTime?: any | null;
|
startTime?: any | null;
|
||||||
@@ -3140,6 +3186,8 @@ export type GetVideoFeedQuery = {
|
|||||||
totalShotsMade: number;
|
totalShotsMade: number;
|
||||||
totalShots: number;
|
totalShots: number;
|
||||||
makePercentage: number;
|
makePercentage: number;
|
||||||
|
averageTimeBetweenShots?: number | null;
|
||||||
|
averageDifficulty?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
startTime?: any | null;
|
startTime?: any | null;
|
||||||
@@ -3380,6 +3428,29 @@ export type GetMedalsQuery = {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export type GetRunsForHighlightsQueryVariables = Exact<{
|
||||||
|
filterInput: RunFilterInput;
|
||||||
|
runIds?: InputMaybe<Array<Scalars["Int"]["input"]> | Scalars["Int"]["input"]>;
|
||||||
|
runsOrdering?: InputMaybe<GetRunsOrdering>;
|
||||||
|
}>;
|
||||||
|
|
||||||
|
export type GetRunsForHighlightsQuery = {
|
||||||
|
__typename?: "Query";
|
||||||
|
getRuns: {
|
||||||
|
__typename?: "GetRunsResult";
|
||||||
|
count?: number | null;
|
||||||
|
runIds: Array<number>;
|
||||||
|
runs: Array<{
|
||||||
|
__typename?: "RunGQL";
|
||||||
|
id: number;
|
||||||
|
runLength: number;
|
||||||
|
userId: number;
|
||||||
|
videoId: number;
|
||||||
|
shots: Array<{ __typename?: "ShotGQL"; videoId: number; id: number }>;
|
||||||
|
}>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
export type GetSerializedShotPathsQueryVariables = Exact<{
|
export type GetSerializedShotPathsQueryVariables = Exact<{
|
||||||
filterInput: FilterInput;
|
filterInput: FilterInput;
|
||||||
}>;
|
}>;
|
||||||
@@ -3507,6 +3578,8 @@ export type GetShotsWithMetadataFilterResultQuery = {
|
|||||||
falsePositiveScore?: number | null;
|
falsePositiveScore?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
|
startSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
|
endSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
user?: { __typename?: "UserGQL"; id: number } | null;
|
user?: { __typename?: "UserGQL"; id: number } | null;
|
||||||
cueObjectFeatures?: {
|
cueObjectFeatures?: {
|
||||||
__typename?: "CueObjectFeaturesGQL";
|
__typename?: "CueObjectFeaturesGQL";
|
||||||
@@ -3574,6 +3647,8 @@ export type GetShotsWithMetadataQuery = {
|
|||||||
falsePositiveScore?: number | null;
|
falsePositiveScore?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
|
startSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
|
endSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
user?: { __typename?: "UserGQL"; id: number } | null;
|
user?: { __typename?: "UserGQL"; id: number } | null;
|
||||||
cueObjectFeatures?: {
|
cueObjectFeatures?: {
|
||||||
__typename?: "CueObjectFeaturesGQL";
|
__typename?: "CueObjectFeaturesGQL";
|
||||||
@@ -3634,6 +3709,8 @@ export type GetShotsByIdsQuery = {
|
|||||||
falsePositiveScore?: number | null;
|
falsePositiveScore?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
|
startSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
|
endSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
user?: { __typename?: "UserGQL"; id: number } | null;
|
user?: { __typename?: "UserGQL"; id: number } | null;
|
||||||
cueObjectFeatures?: {
|
cueObjectFeatures?: {
|
||||||
__typename?: "CueObjectFeaturesGQL";
|
__typename?: "CueObjectFeaturesGQL";
|
||||||
@@ -3683,6 +3760,8 @@ export type ShotWithAllFeaturesFragment = {
|
|||||||
falsePositiveScore?: number | null;
|
falsePositiveScore?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
|
startSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
|
endSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
user?: { __typename?: "UserGQL"; id: number } | null;
|
user?: { __typename?: "UserGQL"; id: number } | null;
|
||||||
cueObjectFeatures?: {
|
cueObjectFeatures?: {
|
||||||
__typename?: "CueObjectFeaturesGQL";
|
__typename?: "CueObjectFeaturesGQL";
|
||||||
@@ -3745,6 +3824,8 @@ export type EditShotMutation = {
|
|||||||
falsePositiveScore?: number | null;
|
falsePositiveScore?: number | null;
|
||||||
createdAt?: any | null;
|
createdAt?: any | null;
|
||||||
updatedAt?: any | null;
|
updatedAt?: any | null;
|
||||||
|
startSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
|
endSegment: { __typename?: "SegmentInfo"; index: number; time: number };
|
||||||
user?: { __typename?: "UserGQL"; id: number } | null;
|
user?: { __typename?: "UserGQL"; id: number } | null;
|
||||||
cueObjectFeatures?: {
|
cueObjectFeatures?: {
|
||||||
__typename?: "CueObjectFeaturesGQL";
|
__typename?: "CueObjectFeaturesGQL";
|
||||||
@@ -3927,7 +4008,16 @@ export type GetUserTagsQueryVariables = Exact<{ [key: string]: never }>;
|
|||||||
|
|
||||||
export type GetUserTagsQuery = {
|
export type GetUserTagsQuery = {
|
||||||
__typename?: "Query";
|
__typename?: "Query";
|
||||||
getUserTags: Array<{ __typename?: "TagGQL"; id: number; name: string }>;
|
getUserTags: Array<{
|
||||||
|
__typename?: "TagGQL";
|
||||||
|
id: number;
|
||||||
|
name: string;
|
||||||
|
tagClasses?: Array<{
|
||||||
|
__typename?: "TagClassGQL";
|
||||||
|
id: number;
|
||||||
|
name: string;
|
||||||
|
}> | null;
|
||||||
|
}>;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type FollowUserMutationVariables = Exact<{
|
export type FollowUserMutationVariables = Exact<{
|
||||||
@@ -4766,6 +4856,8 @@ export const VideoCardFieldsFragmentDoc = gql`
|
|||||||
totalShotsMade
|
totalShotsMade
|
||||||
totalShots
|
totalShots
|
||||||
makePercentage
|
makePercentage
|
||||||
|
averageTimeBetweenShots
|
||||||
|
averageDifficulty
|
||||||
createdAt
|
createdAt
|
||||||
updatedAt
|
updatedAt
|
||||||
startTime
|
startTime
|
||||||
@@ -4811,6 +4903,14 @@ export const ShotWithAllFeaturesFragmentDoc = gql`
|
|||||||
endFrame
|
endFrame
|
||||||
startTime @client
|
startTime @client
|
||||||
endTime @client
|
endTime @client
|
||||||
|
startSegment @client {
|
||||||
|
index
|
||||||
|
time
|
||||||
|
}
|
||||||
|
endSegment @client {
|
||||||
|
index
|
||||||
|
time
|
||||||
|
}
|
||||||
user {
|
user {
|
||||||
id
|
id
|
||||||
}
|
}
|
||||||
@@ -5712,6 +5812,100 @@ export type GetMedalsQueryResult = Apollo.QueryResult<
|
|||||||
GetMedalsQuery,
|
GetMedalsQuery,
|
||||||
GetMedalsQueryVariables
|
GetMedalsQueryVariables
|
||||||
>;
|
>;
|
||||||
|
export const GetRunsForHighlightsDocument = gql`
|
||||||
|
query GetRunsForHighlights(
|
||||||
|
$filterInput: RunFilterInput!
|
||||||
|
$runIds: [Int!] = null
|
||||||
|
$runsOrdering: GetRunsOrdering
|
||||||
|
) {
|
||||||
|
getRuns(
|
||||||
|
filterInput: $filterInput
|
||||||
|
runIds: $runIds
|
||||||
|
runsOrdering: $runsOrdering
|
||||||
|
) {
|
||||||
|
count
|
||||||
|
runs {
|
||||||
|
id
|
||||||
|
runLength
|
||||||
|
userId
|
||||||
|
videoId
|
||||||
|
shots {
|
||||||
|
videoId
|
||||||
|
id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
runIds
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* __useGetRunsForHighlightsQuery__
|
||||||
|
*
|
||||||
|
* To run a query within a React component, call `useGetRunsForHighlightsQuery` and pass it any options that fit your needs.
|
||||||
|
* When your component renders, `useGetRunsForHighlightsQuery` 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 } = useGetRunsForHighlightsQuery({
|
||||||
|
* variables: {
|
||||||
|
* filterInput: // value for 'filterInput'
|
||||||
|
* runIds: // value for 'runIds'
|
||||||
|
* runsOrdering: // value for 'runsOrdering'
|
||||||
|
* },
|
||||||
|
* });
|
||||||
|
*/
|
||||||
|
export function useGetRunsForHighlightsQuery(
|
||||||
|
baseOptions: Apollo.QueryHookOptions<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>,
|
||||||
|
) {
|
||||||
|
const options = { ...defaultOptions, ...baseOptions };
|
||||||
|
return Apollo.useQuery<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>(GetRunsForHighlightsDocument, options);
|
||||||
|
}
|
||||||
|
export function useGetRunsForHighlightsLazyQuery(
|
||||||
|
baseOptions?: Apollo.LazyQueryHookOptions<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>,
|
||||||
|
) {
|
||||||
|
const options = { ...defaultOptions, ...baseOptions };
|
||||||
|
return Apollo.useLazyQuery<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>(GetRunsForHighlightsDocument, options);
|
||||||
|
}
|
||||||
|
export function useGetRunsForHighlightsSuspenseQuery(
|
||||||
|
baseOptions?: Apollo.SuspenseQueryHookOptions<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>,
|
||||||
|
) {
|
||||||
|
const options = { ...defaultOptions, ...baseOptions };
|
||||||
|
return Apollo.useSuspenseQuery<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>(GetRunsForHighlightsDocument, options);
|
||||||
|
}
|
||||||
|
export type GetRunsForHighlightsQueryHookResult = ReturnType<
|
||||||
|
typeof useGetRunsForHighlightsQuery
|
||||||
|
>;
|
||||||
|
export type GetRunsForHighlightsLazyQueryHookResult = ReturnType<
|
||||||
|
typeof useGetRunsForHighlightsLazyQuery
|
||||||
|
>;
|
||||||
|
export type GetRunsForHighlightsSuspenseQueryHookResult = ReturnType<
|
||||||
|
typeof useGetRunsForHighlightsSuspenseQuery
|
||||||
|
>;
|
||||||
|
export type GetRunsForHighlightsQueryResult = Apollo.QueryResult<
|
||||||
|
GetRunsForHighlightsQuery,
|
||||||
|
GetRunsForHighlightsQueryVariables
|
||||||
|
>;
|
||||||
export const GetSerializedShotPathsDocument = gql`
|
export const GetSerializedShotPathsDocument = gql`
|
||||||
query GetSerializedShotPaths($filterInput: FilterInput!) {
|
query GetSerializedShotPaths($filterInput: FilterInput!) {
|
||||||
getShots(filterInput: $filterInput) {
|
getShots(filterInput: $filterInput) {
|
||||||
@@ -6932,6 +7126,10 @@ export const GetUserTagsDocument = gql`
|
|||||||
getUserTags {
|
getUserTags {
|
||||||
id
|
id
|
||||||
name
|
name
|
||||||
|
tagClasses {
|
||||||
|
id
|
||||||
|
name
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
`;
|
`;
|
||||||
|
@@ -27,6 +27,8 @@ fragment VideoCardFields on VideoGQL {
|
|||||||
totalShotsMade
|
totalShotsMade
|
||||||
totalShots
|
totalShots
|
||||||
makePercentage
|
makePercentage
|
||||||
|
averageTimeBetweenShots
|
||||||
|
averageDifficulty
|
||||||
createdAt
|
createdAt
|
||||||
updatedAt
|
updatedAt
|
||||||
startTime
|
startTime
|
||||||
|
24
src/operations/runs.gql
Normal file
24
src/operations/runs.gql
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
query GetRunsForHighlights(
|
||||||
|
$filterInput: RunFilterInput!
|
||||||
|
$runIds: [Int!] = null
|
||||||
|
$runsOrdering: GetRunsOrdering
|
||||||
|
) {
|
||||||
|
getRuns(
|
||||||
|
filterInput: $filterInput
|
||||||
|
runIds: $runIds
|
||||||
|
runsOrdering: $runsOrdering
|
||||||
|
) {
|
||||||
|
count
|
||||||
|
runs {
|
||||||
|
id
|
||||||
|
runLength
|
||||||
|
userId
|
||||||
|
videoId
|
||||||
|
shots {
|
||||||
|
videoId
|
||||||
|
id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
runIds
|
||||||
|
}
|
||||||
|
}
|
@@ -139,6 +139,14 @@ fragment ShotWithAllFeatures on ShotGQL {
|
|||||||
endFrame
|
endFrame
|
||||||
startTime @client
|
startTime @client
|
||||||
endTime @client
|
endTime @client
|
||||||
|
startSegment @client {
|
||||||
|
index
|
||||||
|
time
|
||||||
|
}
|
||||||
|
endSegment @client {
|
||||||
|
index
|
||||||
|
time
|
||||||
|
}
|
||||||
user {
|
user {
|
||||||
id
|
id
|
||||||
}
|
}
|
||||||
|
@@ -79,6 +79,10 @@ query GetUserTags {
|
|||||||
getUserTags {
|
getUserTags {
|
||||||
id
|
id
|
||||||
name
|
name
|
||||||
|
tagClasses {
|
||||||
|
id
|
||||||
|
name
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -462,6 +462,7 @@ type VideoGQL {
|
|||||||
makePercentage: Float!
|
makePercentage: Float!
|
||||||
medianRun: Float
|
medianRun: Float
|
||||||
averageTimeBetweenShots: Float
|
averageTimeBetweenShots: Float
|
||||||
|
averageDifficulty: Float
|
||||||
createdAt: DateTime
|
createdAt: DateTime
|
||||||
updatedAt: DateTime
|
updatedAt: DateTime
|
||||||
shots: [ShotGQL!]!
|
shots: [ShotGQL!]!
|
||||||
@@ -477,6 +478,7 @@ type VideoGQL {
|
|||||||
currentHomography: HomographyInfoGQL
|
currentHomography: HomographyInfoGQL
|
||||||
homographyHistory: [HomographyInfoGQL!]!
|
homographyHistory: [HomographyInfoGQL!]!
|
||||||
currentProcessing: VideoProcessingGQL
|
currentProcessing: VideoProcessingGQL
|
||||||
|
reactions: [ReactionGQL!]!
|
||||||
}
|
}
|
||||||
|
|
||||||
type UploadStreamGQL {
|
type UploadStreamGQL {
|
||||||
@@ -610,6 +612,22 @@ type VideoProcessingStatusGQL {
|
|||||||
updatedAt: DateTime
|
updatedAt: DateTime
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ReactionGQL {
|
||||||
|
videoId: Int!
|
||||||
|
user: UserGQL!
|
||||||
|
reaction: ReactionEnum!
|
||||||
|
createdAt: DateTime
|
||||||
|
updatedAt: DateTime
|
||||||
|
}
|
||||||
|
|
||||||
|
enum ReactionEnum {
|
||||||
|
LIKE
|
||||||
|
HEART
|
||||||
|
BULLSEYE
|
||||||
|
HUNDRED
|
||||||
|
NONE
|
||||||
|
}
|
||||||
|
|
||||||
type RunFeaturesGQL {
|
type RunFeaturesGQL {
|
||||||
runId: Int!
|
runId: Int!
|
||||||
indexInRun: Int!
|
indexInRun: Int!
|
||||||
@@ -714,9 +732,14 @@ type PageInfoGQL {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type TagGQL {
|
type TagGQL {
|
||||||
name: String!
|
|
||||||
id: Int!
|
id: Int!
|
||||||
group: String
|
name: String!
|
||||||
|
tagClasses: [TagClassGQL!]
|
||||||
|
}
|
||||||
|
|
||||||
|
type TagClassGQL {
|
||||||
|
id: Int!
|
||||||
|
name: String!
|
||||||
}
|
}
|
||||||
|
|
||||||
"""
|
"""
|
||||||
@@ -791,6 +814,7 @@ type Mutation {
|
|||||||
): Boolean!
|
): Boolean!
|
||||||
editUploadStream(videoId: Int!, videoMetadata: VideoMetadataInput!): Boolean!
|
editUploadStream(videoId: Int!, videoMetadata: VideoMetadataInput!): Boolean!
|
||||||
deleteVideo(videoId: Int!): Boolean!
|
deleteVideo(videoId: Int!): Boolean!
|
||||||
|
reactToVideo(videoId: Int!, reaction: ReactionEnum!): Boolean!
|
||||||
}
|
}
|
||||||
|
|
||||||
input CreateBucketSetInput {
|
input CreateBucketSetInput {
|
||||||
@@ -895,6 +919,12 @@ input VideoMetadataInput {
|
|||||||
startTime: DateTime = null
|
startTime: DateTime = null
|
||||||
endTime: DateTime = null
|
endTime: DateTime = null
|
||||||
gameType: String = null
|
gameType: String = null
|
||||||
|
@deprecated(reason: "`game_type` is deprecated. Use `tags` instead.")
|
||||||
|
|
||||||
|
"""
|
||||||
|
A list of tags associated with the video. Replace `game_type`
|
||||||
|
"""
|
||||||
|
tags: [VideoTagInput!] = null
|
||||||
tableSize: Float = null
|
tableSize: Float = null
|
||||||
lastIntendedSegmentBound: Int = null
|
lastIntendedSegmentBound: Int = null
|
||||||
streamSegmentType: StreamSegmentTypeEnum = null
|
streamSegmentType: StreamSegmentTypeEnum = null
|
||||||
|
Reference in New Issue
Block a user