Compare commits
	
		
			38 Commits
		
	
	
		
			kat/add-us
			...
			9db95c4e6c
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 9db95c4e6c | |||
| 249807c935 | |||
| eec79b2dc5 | |||
| 464c013095 | |||
| e2f4995cad | |||
| a43b286e39 | |||
| 148f5362f0 | |||
| 4d01e9814d | |||
| b9e3e1f310 | |||
| b0da48c4fb | |||
| 1e53dc21ee | |||
| 5c5014339f | |||
| 84188a6066 | |||
| 7c7be319d1 | |||
| 79784faba1 | |||
| f3ea44755c | |||
| 9b6559559c | |||
| 2398216bf2 | |||
| d942b91d17 | |||
| 24d9b9225e | |||
| f6f6404302 | |||
| 4609af726b | |||
| c5919c90d0 | |||
| 605adc3293 | |||
| b40554d38d | |||
| 194d7c66a0 | |||
| 3adc301935 | |||
| 9232c673e8 | |||
| c2cb411469 | |||
| 44ddc732a1 | |||
| d6ef3e0487 | |||
| 8c191bdb90 | |||
| 8246699915 | |||
| de9d47c289 | |||
| 39b1808cab | |||
| a78f9e7b9d | |||
| f573026853 | |||
| f98c98ecdd | 
| @@ -7,7 +7,7 @@ readme = "README.md" | |||||||
| packages = [{include = "rbproto"}] | packages = [{include = "rbproto"}] | ||||||
|  |  | ||||||
| [tool.poetry.dependencies] | [tool.poetry.dependencies] | ||||||
| python = ">=3.10,<3.12" | python = ">=3.10,<=3.13" | ||||||
| protobuf = "^4.25.3" | protobuf = "^4.25.3" | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										486
									
								
								src/index.tsx
									
									
									
									
									
								
							
							
						
						
									
										486
									
								
								src/index.tsx
									
									
									
									
									
								
							| @@ -2166,10 +2166,10 @@ export type Query = { | |||||||
|   getShotsByIds: Array<ShotGql>; |   getShotsByIds: Array<ShotGql>; | ||||||
|   getShotsWithMetadata: GetShotsResult; |   getShotsWithMetadata: GetShotsResult; | ||||||
|   getUser?: Maybe<UserGql>; |   getUser?: Maybe<UserGql>; | ||||||
|  |   getUserRelationshipsMatching: UserRelationshipsResult; | ||||||
|   getUserTags: Array<TagGql>; |   getUserTags: Array<TagGql>; | ||||||
|   getUserVideos: VideoHistoryGql; |   getUserVideos: VideoHistoryGql; | ||||||
|   getUsernames: Array<Scalars["String"]["output"]>; |   getUsernames: Array<Scalars["String"]["output"]>; | ||||||
|   getUsernamesAndFollowing: UsernamesAndFollowingResponse; |  | ||||||
|   getVideo: VideoGql; |   getVideo: VideoGql; | ||||||
|   getVideoMakePercentageIntervals: Array<MakePercentageIntervalGql>; |   getVideoMakePercentageIntervals: Array<MakePercentageIntervalGql>; | ||||||
|   getVideos: Array<VideoGql>; |   getVideos: Array<VideoGql>; | ||||||
| @@ -2226,6 +2226,13 @@ export type QueryGetUserArgs = { | |||||||
|   userId: Scalars["Int"]["input"]; |   userId: Scalars["Int"]["input"]; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | export type QueryGetUserRelationshipsMatchingArgs = { | ||||||
|  |   after?: InputMaybe<Scalars["String"]["input"]>; | ||||||
|  |   limit?: InputMaybe<Scalars["Int"]["input"]>; | ||||||
|  |   matchString?: InputMaybe<Scalars["String"]["input"]>; | ||||||
|  |   userId: Scalars["Int"]["input"]; | ||||||
|  | }; | ||||||
|  |  | ||||||
| export type QueryGetUserVideosArgs = { | export type QueryGetUserVideosArgs = { | ||||||
|   after?: InputMaybe<Scalars["String"]["input"]>; |   after?: InputMaybe<Scalars["String"]["input"]>; | ||||||
|   filters?: InputMaybe<VideoFilterInput>; |   filters?: InputMaybe<VideoFilterInput>; | ||||||
| @@ -2239,13 +2246,6 @@ export type QueryGetUsernamesArgs = { | |||||||
|   matchString?: InputMaybe<Scalars["String"]["input"]>; |   matchString?: InputMaybe<Scalars["String"]["input"]>; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| export type QueryGetUsernamesAndFollowingArgs = { |  | ||||||
|   after?: InputMaybe<Scalars["String"]["input"]>; |  | ||||||
|   limit?: InputMaybe<Scalars["Int"]["input"]>; |  | ||||||
|   matchString?: InputMaybe<Scalars["String"]["input"]>; |  | ||||||
|   userId: Scalars["Int"]["input"]; |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| export type QueryGetVideoArgs = { | export type QueryGetVideoArgs = { | ||||||
|   debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>; |   debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>; | ||||||
|   videoId: Scalars["Int"]["input"]; |   videoId: Scalars["Int"]["input"]; | ||||||
| @@ -2412,15 +2412,6 @@ export type SuccessfulAddAddShotAnnotationErrors = | |||||||
|   | AddShotAnnotationErrors |   | AddShotAnnotationErrors | ||||||
|   | SuccessfulAdd; |   | SuccessfulAdd; | ||||||
|  |  | ||||||
| export type SuccessfulUpdate = { |  | ||||||
|   __typename?: "SuccessfulUpdate"; |  | ||||||
|   value: Scalars["Boolean"]["output"]; |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| export type SuccessfulUpdateUpdateShotAnnotationErrors = |  | ||||||
|   | SuccessfulUpdate |  | ||||||
|   | UpdateShotAnnotationErrors; |  | ||||||
|  |  | ||||||
| export type TagGql = { | export type TagGql = { | ||||||
|   __typename?: "TagGQL"; |   __typename?: "TagGQL"; | ||||||
|   group?: Maybe<Scalars["String"]["output"]>; |   group?: Maybe<Scalars["String"]["output"]>; | ||||||
| @@ -2463,14 +2454,10 @@ export type UpdateAnnotationInputGql = { | |||||||
|   notes?: InputMaybe<Scalars["String"]["input"]>; |   notes?: InputMaybe<Scalars["String"]["input"]>; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| export type UpdateShotAnnotationErrors = { |  | ||||||
|   __typename?: "UpdateShotAnnotationErrors"; |  | ||||||
|   error?: Maybe<DoesNotOwnShotErr>; |  | ||||||
| }; |  | ||||||
|  |  | ||||||
| export type UpdateShotAnnotationReturn = { | export type UpdateShotAnnotationReturn = { | ||||||
|   __typename?: "UpdateShotAnnotationReturn"; |   __typename?: "UpdateShotAnnotationReturn"; | ||||||
|   value: SuccessfulUpdateUpdateShotAnnotationErrors; |   error?: Maybe<DoesNotOwnShotErr>; | ||||||
|  |   shot?: Maybe<ShotGql>; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| export type UploadLink = { | export type UploadLink = { | ||||||
| @@ -2521,11 +2508,11 @@ export type UserGql = { | |||||||
|   activeVideoId?: Maybe<Scalars["Int"]["output"]>; |   activeVideoId?: Maybe<Scalars["Int"]["output"]>; | ||||||
|   createdAt?: Maybe<Scalars["DateTime"]["output"]>; |   createdAt?: Maybe<Scalars["DateTime"]["output"]>; | ||||||
|   fargoRating?: Maybe<Scalars["Int"]["output"]>; |   fargoRating?: Maybe<Scalars["Int"]["output"]>; | ||||||
|   firebaseUid: Scalars["String"]["output"]; |   firebaseUid?: Maybe<Scalars["String"]["output"]>; | ||||||
|   followers?: Maybe<Array<Scalars["Int"]["output"]>>; |   followers?: Maybe<Array<UserGql>>; | ||||||
|   following?: Maybe<Array<Scalars["Int"]["output"]>>; |   following?: Maybe<Array<UserGql>>; | ||||||
|   id: Scalars["Int"]["output"]; |   id: Scalars["Int"]["output"]; | ||||||
|   isAdmin: Scalars["Boolean"]["output"]; |   isAdmin?: Maybe<Scalars["Boolean"]["output"]>; | ||||||
|   profileImageUri?: Maybe<Scalars["String"]["output"]>; |   profileImageUri?: Maybe<Scalars["String"]["output"]>; | ||||||
|   updatedAt?: Maybe<Scalars["DateTime"]["output"]>; |   updatedAt?: Maybe<Scalars["DateTime"]["output"]>; | ||||||
|   username: Scalars["String"]["output"]; |   username: Scalars["String"]["output"]; | ||||||
| @@ -2536,11 +2523,17 @@ export type UserPlayTimeGql = { | |||||||
|   totalSeconds: Scalars["Float"]["output"]; |   totalSeconds: Scalars["Float"]["output"]; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| export type UsernamesAndFollowingResponse = { | export type UserRelationship = { | ||||||
|   __typename?: "UsernamesAndFollowingResponse"; |   __typename?: "UserRelationship"; | ||||||
|   followers: Array<Scalars["Int"]["output"]>; |   toUser: UserGql; | ||||||
|   following: Array<Scalars["Int"]["output"]>; |   toUserFollows: Scalars["Boolean"]["output"]; | ||||||
|   usernames: Array<Scalars["String"]["output"]>; |   toUserIsFollowedBy: Scalars["Boolean"]["output"]; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | export type UserRelationshipsResult = { | ||||||
|  |   __typename?: "UserRelationshipsResult"; | ||||||
|  |   inquiringUser: UserGql; | ||||||
|  |   relationships: Array<UserRelationship>; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| export type VideoFilterInput = { | export type VideoFilterInput = { | ||||||
| @@ -2713,7 +2706,11 @@ export type GetFeedQuery = { | |||||||
|       elapsedTime?: number | null; |       elapsedTime?: number | null; | ||||||
|       tableSize: number; |       tableSize: number; | ||||||
|       owner?: { __typename?: "UserGQL"; username: string } | null; |       owner?: { __typename?: "UserGQL"; username: string } | null; | ||||||
|       stream?: { __typename?: "UploadStreamGQL"; isCompleted: boolean } | null; |       stream?: { | ||||||
|  |         __typename?: "UploadStreamGQL"; | ||||||
|  |         id: string; | ||||||
|  |         isCompleted: boolean; | ||||||
|  |       } | null; | ||||||
|       tags: Array<{ |       tags: Array<{ | ||||||
|         __typename?: "VideoTag"; |         __typename?: "VideoTag"; | ||||||
|         name: string; |         name: string; | ||||||
| @@ -2783,29 +2780,38 @@ export type UpdateShotAnnotationsMutation = { | |||||||
|   __typename?: "Mutation"; |   __typename?: "Mutation"; | ||||||
|   updateShotAnnotations: { |   updateShotAnnotations: { | ||||||
|     __typename?: "UpdateShotAnnotationReturn"; |     __typename?: "UpdateShotAnnotationReturn"; | ||||||
|     value: |     shot?: { | ||||||
|       | { __typename?: "SuccessfulUpdate"; value: boolean } |       __typename?: "ShotGQL"; | ||||||
|       | { |       id: number; | ||||||
|           __typename?: "UpdateShotAnnotationErrors"; |       annotations: Array<{ | ||||||
|  |         __typename?: "ShotAnnotationGQL"; | ||||||
|  |         shotId: number; | ||||||
|  |         notes: string; | ||||||
|  |         type: { | ||||||
|  |           __typename?: "ShotAnnotationTypeGQL"; | ||||||
|  |           id: number; | ||||||
|  |           name: string; | ||||||
|  |         }; | ||||||
|  |       }>; | ||||||
|  |     } | null; | ||||||
|     error?: { |     error?: { | ||||||
|       __typename?: "DoesNotOwnShotErr"; |       __typename?: "DoesNotOwnShotErr"; | ||||||
|       shotId: number; |       shotId: number; | ||||||
|       msg?: string | null; |       msg?: string | null; | ||||||
|     } | null; |     } | null; | ||||||
|   }; |   }; | ||||||
|   }; |  | ||||||
| }; | }; | ||||||
|  |  | ||||||
| export type GetShotsWithVideoGqlQueryVariables = Exact<{ | export type GetShotsWithVideoGqlQueryVariables = Exact<{ | ||||||
|   filterInput: FilterInput; |   filterInput: FilterInput; | ||||||
|  |   shotsOrdering?: InputMaybe<GetShotsOrdering>; | ||||||
|   limit?: InputMaybe<Scalars["Int"]["input"]>; |   limit?: InputMaybe<Scalars["Int"]["input"]>; | ||||||
| }>; | }>; | ||||||
|  |  | ||||||
| export type GetShotsWithVideoGqlQuery = { | export type GetShotsWithVideoGqlQuery = { | ||||||
|   __typename?: "Query"; |   __typename?: "Query"; | ||||||
|   getShotsWithMetadata: { |   getOrderedShots: { | ||||||
|     __typename?: "GetShotsResult"; |     __typename?: "GetShotsResult"; | ||||||
|     ids: Array<number>; |  | ||||||
|     shots: Array<{ |     shots: Array<{ | ||||||
|       __typename?: "ShotGQL"; |       __typename?: "ShotGQL"; | ||||||
|       id: number; |       id: number; | ||||||
| @@ -3089,7 +3095,7 @@ export type EditProfileImageUriMutation = { | |||||||
|   editProfileImageUri: { |   editProfileImageUri: { | ||||||
|     __typename?: "UserGQL"; |     __typename?: "UserGQL"; | ||||||
|     id: number; |     id: number; | ||||||
|     firebaseUid: string; |     firebaseUid?: string | null; | ||||||
|     username: string; |     username: string; | ||||||
|     profileImageUri?: string | null; |     profileImageUri?: string | null; | ||||||
|     createdAt?: any | null; |     createdAt?: any | null; | ||||||
| @@ -3104,10 +3110,11 @@ export type GetLoggedInUserQuery = { | |||||||
|   getLoggedInUser?: { |   getLoggedInUser?: { | ||||||
|     __typename?: "UserGQL"; |     __typename?: "UserGQL"; | ||||||
|     id: number; |     id: number; | ||||||
|     firebaseUid: string; |     firebaseUid?: string | null; | ||||||
|     username: string; |     username: string; | ||||||
|     isAdmin: boolean; |     isAdmin?: boolean | null; | ||||||
|     profileImageUri?: string | null; |     profileImageUri?: string | null; | ||||||
|  |     fargoRating?: number | null; | ||||||
|     activeVideoId?: number | null; |     activeVideoId?: number | null; | ||||||
|     createdAt?: any | null; |     createdAt?: any | null; | ||||||
|     updatedAt?: any | null; |     updatedAt?: any | null; | ||||||
| @@ -3134,6 +3141,26 @@ export type GetUsernamesQuery = { | |||||||
|   getUsernames: Array<string>; |   getUsernames: Array<string>; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | export type GetUserRelationshipsMatchingQueryVariables = Exact<{ | ||||||
|  |   userId: Scalars["Int"]["input"]; | ||||||
|  |   matchString: Scalars["String"]["input"]; | ||||||
|  |   limit?: InputMaybe<Scalars["Int"]["input"]>; | ||||||
|  |   after?: InputMaybe<Scalars["String"]["input"]>; | ||||||
|  | }>; | ||||||
|  |  | ||||||
|  | export type GetUserRelationshipsMatchingQuery = { | ||||||
|  |   __typename?: "Query"; | ||||||
|  |   getUserRelationshipsMatching: { | ||||||
|  |     __typename?: "UserRelationshipsResult"; | ||||||
|  |     relationships: Array<{ | ||||||
|  |       __typename?: "UserRelationship"; | ||||||
|  |       toUserFollows: boolean; | ||||||
|  |       toUserIsFollowedBy: boolean; | ||||||
|  |       toUser: { __typename?: "UserGQL"; username: string; id: number }; | ||||||
|  |     }>; | ||||||
|  |   }; | ||||||
|  | }; | ||||||
|  |  | ||||||
| export type GetUserTagsQueryVariables = Exact<{ [key: string]: never }>; | export type GetUserTagsQueryVariables = Exact<{ [key: string]: never }>; | ||||||
|  |  | ||||||
| export type GetUserTagsQuery = { | export type GetUserTagsQuery = { | ||||||
| @@ -3141,6 +3168,56 @@ export type GetUserTagsQuery = { | |||||||
|   getUserTags: Array<{ __typename?: "TagGQL"; id: number; name: string }>; |   getUserTags: Array<{ __typename?: "TagGQL"; id: number; name: string }>; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | export type FollowUserMutationVariables = Exact<{ | ||||||
|  |   followedUserId: Scalars["Int"]["input"]; | ||||||
|  | }>; | ||||||
|  |  | ||||||
|  | export type FollowUserMutation = { | ||||||
|  |   __typename?: "Mutation"; | ||||||
|  |   followUser: { | ||||||
|  |     __typename?: "UserGQL"; | ||||||
|  |     username: string; | ||||||
|  |     following?: Array<{ __typename?: "UserGQL"; id: number }> | null; | ||||||
|  |     followers?: Array<{ __typename?: "UserGQL"; id: number }> | null; | ||||||
|  |   }; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | export type UnfollowUserMutationVariables = Exact<{ | ||||||
|  |   followedUserId: Scalars["Int"]["input"]; | ||||||
|  | }>; | ||||||
|  |  | ||||||
|  | export type UnfollowUserMutation = { | ||||||
|  |   __typename?: "Mutation"; | ||||||
|  |   unfollowUser: { | ||||||
|  |     __typename?: "UserGQL"; | ||||||
|  |     username: string; | ||||||
|  |     following?: Array<{ __typename?: "UserGQL"; id: number }> | null; | ||||||
|  |     followers?: Array<{ __typename?: "UserGQL"; id: number }> | null; | ||||||
|  |   }; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | export type GetUserFollowingFollowersQueryVariables = Exact<{ | ||||||
|  |   [key: string]: never; | ||||||
|  | }>; | ||||||
|  |  | ||||||
|  | export type GetUserFollowingFollowersQuery = { | ||||||
|  |   __typename?: "Query"; | ||||||
|  |   getLoggedInUser?: { | ||||||
|  |     __typename?: "UserGQL"; | ||||||
|  |     id: number; | ||||||
|  |     following?: Array<{ | ||||||
|  |       __typename?: "UserGQL"; | ||||||
|  |       id: number; | ||||||
|  |       username: string; | ||||||
|  |     }> | null; | ||||||
|  |     followers?: Array<{ | ||||||
|  |       __typename?: "UserGQL"; | ||||||
|  |       id: number; | ||||||
|  |       username: string; | ||||||
|  |     }> | null; | ||||||
|  |   } | null; | ||||||
|  | }; | ||||||
|  |  | ||||||
| export type GetStreamMonitoringDetailsQueryVariables = Exact<{ | export type GetStreamMonitoringDetailsQueryVariables = Exact<{ | ||||||
|   videoId: Scalars["Int"]["input"]; |   videoId: Scalars["Int"]["input"]; | ||||||
|   debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>; |   debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>; | ||||||
| @@ -3182,6 +3259,7 @@ export type GetStreamMonitoringDetailsQuery = { | |||||||
|     } | null; |     } | null; | ||||||
|     stream?: { |     stream?: { | ||||||
|       __typename?: "UploadStreamGQL"; |       __typename?: "UploadStreamGQL"; | ||||||
|  |       id: string; | ||||||
|       linksRequested: number; |       linksRequested: number; | ||||||
|       uploadsCompleted: number; |       uploadsCompleted: number; | ||||||
|       segmentProcessingCursor: number; |       segmentProcessingCursor: number; | ||||||
| @@ -3258,7 +3336,7 @@ export type GetVideoDetailsQuery = { | |||||||
|     owner?: { |     owner?: { | ||||||
|       __typename?: "UserGQL"; |       __typename?: "UserGQL"; | ||||||
|       id: number; |       id: number; | ||||||
|       firebaseUid: string; |       firebaseUid?: string | null; | ||||||
|       username: string; |       username: string; | ||||||
|       profileImageUri?: string | null; |       profileImageUri?: string | null; | ||||||
|     } | null; |     } | null; | ||||||
| @@ -3395,6 +3473,7 @@ export type GetVideoQuery = { | |||||||
|     }>; |     }>; | ||||||
|     stream?: { |     stream?: { | ||||||
|       __typename?: "UploadStreamGQL"; |       __typename?: "UploadStreamGQL"; | ||||||
|  |       id: string; | ||||||
|       streamSegmentType: StreamSegmentTypeEnum; |       streamSegmentType: StreamSegmentTypeEnum; | ||||||
|       segments: Array<{ |       segments: Array<{ | ||||||
|         __typename?: "UploadSegmentGQL"; |         __typename?: "UploadSegmentGQL"; | ||||||
| @@ -4038,6 +4117,7 @@ export const GetFeedDocument = gql` | |||||||
|         elapsedTime |         elapsedTime | ||||||
|         screenshotUri |         screenshotUri | ||||||
|         stream { |         stream { | ||||||
|  |           id | ||||||
|           isCompleted |           isCompleted | ||||||
|         } |         } | ||||||
|         tableSize |         tableSize | ||||||
| @@ -4355,19 +4435,23 @@ export const UpdateShotAnnotationsDocument = gql` | |||||||
|     $annotations: [UpdateAnnotationInputGQL!]! |     $annotations: [UpdateAnnotationInputGQL!]! | ||||||
|   ) { |   ) { | ||||||
|     updateShotAnnotations(shotId: $shotId, annotations: $annotations) { |     updateShotAnnotations(shotId: $shotId, annotations: $annotations) { | ||||||
|       value { |       shot { | ||||||
|         ... on SuccessfulUpdate { |         id | ||||||
|           value |         annotations { | ||||||
|  |           shotId | ||||||
|  |           type { | ||||||
|  |             id | ||||||
|  |             name | ||||||
|  |           } | ||||||
|  |           notes | ||||||
|  |         } | ||||||
|       } |       } | ||||||
|         ... on UpdateShotAnnotationErrors { |  | ||||||
|       error { |       error { | ||||||
|         shotId |         shotId | ||||||
|         msg |         msg | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|     } |  | ||||||
|   } |  | ||||||
| `; | `; | ||||||
| export type UpdateShotAnnotationsMutationFn = Apollo.MutationFunction< | export type UpdateShotAnnotationsMutationFn = Apollo.MutationFunction< | ||||||
|   UpdateShotAnnotationsMutation, |   UpdateShotAnnotationsMutation, | ||||||
| @@ -4414,9 +4498,16 @@ export type UpdateShotAnnotationsMutationOptions = Apollo.BaseMutationOptions< | |||||||
|   UpdateShotAnnotationsMutationVariables |   UpdateShotAnnotationsMutationVariables | ||||||
| >; | >; | ||||||
| export const GetShotsWithVideoGqlDocument = gql` | export const GetShotsWithVideoGqlDocument = gql` | ||||||
|   query GetShotsWithVideoGql($filterInput: FilterInput!, $limit: Int) { |   query GetShotsWithVideoGql( | ||||||
|     getShotsWithMetadata(filterInput: $filterInput, limit: $limit) { |     $filterInput: FilterInput! | ||||||
|       ids |     $shotsOrdering: GetShotsOrdering | ||||||
|  |     $limit: Int | ||||||
|  |   ) { | ||||||
|  |     getOrderedShots( | ||||||
|  |       filterInput: $filterInput | ||||||
|  |       shotsOrdering: $shotsOrdering | ||||||
|  |       limit: $limit | ||||||
|  |     ) { | ||||||
|       shots { |       shots { | ||||||
|         id |         id | ||||||
|         videoId |         videoId | ||||||
| @@ -4442,6 +4533,7 @@ export const GetShotsWithVideoGqlDocument = gql` | |||||||
|  * const { data, loading, error } = useGetShotsWithVideoGqlQuery({ |  * const { data, loading, error } = useGetShotsWithVideoGqlQuery({ | ||||||
|  *   variables: { |  *   variables: { | ||||||
|  *      filterInput: // value for 'filterInput' |  *      filterInput: // value for 'filterInput' | ||||||
|  |  *      shotsOrdering: // value for 'shotsOrdering' | ||||||
|  *      limit: // value for 'limit' |  *      limit: // value for 'limit' | ||||||
|  *   }, |  *   }, | ||||||
|  * }); |  * }); | ||||||
| @@ -4879,6 +4971,7 @@ export const GetLoggedInUserDocument = gql` | |||||||
|       username |       username | ||||||
|       isAdmin |       isAdmin | ||||||
|       profileImageUri |       profileImageUri | ||||||
|  |       fargoRating | ||||||
|       activeVideoId |       activeVideoId | ||||||
|       createdAt |       createdAt | ||||||
|       updatedAt |       updatedAt | ||||||
| @@ -5100,6 +5193,99 @@ export type GetUsernamesQueryResult = Apollo.QueryResult< | |||||||
|   GetUsernamesQuery, |   GetUsernamesQuery, | ||||||
|   GetUsernamesQueryVariables |   GetUsernamesQueryVariables | ||||||
| >; | >; | ||||||
|  | export const GetUserRelationshipsMatchingDocument = gql` | ||||||
|  |   query getUserRelationshipsMatching( | ||||||
|  |     $userId: Int! | ||||||
|  |     $matchString: String! | ||||||
|  |     $limit: Int = null | ||||||
|  |     $after: String = null | ||||||
|  |   ) { | ||||||
|  |     getUserRelationshipsMatching( | ||||||
|  |       userId: $userId | ||||||
|  |       matchString: $matchString | ||||||
|  |       limit: $limit | ||||||
|  |       after: $after | ||||||
|  |     ) { | ||||||
|  |       relationships { | ||||||
|  |         toUser { | ||||||
|  |           username | ||||||
|  |           id | ||||||
|  |         } | ||||||
|  |         toUserFollows | ||||||
|  |         toUserIsFollowedBy | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | `; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * __useGetUserRelationshipsMatchingQuery__ | ||||||
|  |  * | ||||||
|  |  * To run a query within a React component, call `useGetUserRelationshipsMatchingQuery` and pass it any options that fit your needs. | ||||||
|  |  * When your component renders, `useGetUserRelationshipsMatchingQuery` 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 } = useGetUserRelationshipsMatchingQuery({ | ||||||
|  |  *   variables: { | ||||||
|  |  *      userId: // value for 'userId' | ||||||
|  |  *      matchString: // value for 'matchString' | ||||||
|  |  *      limit: // value for 'limit' | ||||||
|  |  *      after: // value for 'after' | ||||||
|  |  *   }, | ||||||
|  |  * }); | ||||||
|  |  */ | ||||||
|  | export function useGetUserRelationshipsMatchingQuery( | ||||||
|  |   baseOptions: Apollo.QueryHookOptions< | ||||||
|  |     GetUserRelationshipsMatchingQuery, | ||||||
|  |     GetUserRelationshipsMatchingQueryVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useQuery< | ||||||
|  |     GetUserRelationshipsMatchingQuery, | ||||||
|  |     GetUserRelationshipsMatchingQueryVariables | ||||||
|  |   >(GetUserRelationshipsMatchingDocument, options); | ||||||
|  | } | ||||||
|  | export function useGetUserRelationshipsMatchingLazyQuery( | ||||||
|  |   baseOptions?: Apollo.LazyQueryHookOptions< | ||||||
|  |     GetUserRelationshipsMatchingQuery, | ||||||
|  |     GetUserRelationshipsMatchingQueryVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useLazyQuery< | ||||||
|  |     GetUserRelationshipsMatchingQuery, | ||||||
|  |     GetUserRelationshipsMatchingQueryVariables | ||||||
|  |   >(GetUserRelationshipsMatchingDocument, options); | ||||||
|  | } | ||||||
|  | export function useGetUserRelationshipsMatchingSuspenseQuery( | ||||||
|  |   baseOptions?: Apollo.SuspenseQueryHookOptions< | ||||||
|  |     GetUserRelationshipsMatchingQuery, | ||||||
|  |     GetUserRelationshipsMatchingQueryVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useSuspenseQuery< | ||||||
|  |     GetUserRelationshipsMatchingQuery, | ||||||
|  |     GetUserRelationshipsMatchingQueryVariables | ||||||
|  |   >(GetUserRelationshipsMatchingDocument, options); | ||||||
|  | } | ||||||
|  | export type GetUserRelationshipsMatchingQueryHookResult = ReturnType< | ||||||
|  |   typeof useGetUserRelationshipsMatchingQuery | ||||||
|  | >; | ||||||
|  | export type GetUserRelationshipsMatchingLazyQueryHookResult = ReturnType< | ||||||
|  |   typeof useGetUserRelationshipsMatchingLazyQuery | ||||||
|  | >; | ||||||
|  | export type GetUserRelationshipsMatchingSuspenseQueryHookResult = ReturnType< | ||||||
|  |   typeof useGetUserRelationshipsMatchingSuspenseQuery | ||||||
|  | >; | ||||||
|  | export type GetUserRelationshipsMatchingQueryResult = Apollo.QueryResult< | ||||||
|  |   GetUserRelationshipsMatchingQuery, | ||||||
|  |   GetUserRelationshipsMatchingQueryVariables | ||||||
|  | >; | ||||||
| export const GetUserTagsDocument = gql` | export const GetUserTagsDocument = gql` | ||||||
|   query GetUserTags { |   query GetUserTags { | ||||||
|     getUserTags { |     getUserTags { | ||||||
| @@ -5171,6 +5357,198 @@ export type GetUserTagsQueryResult = Apollo.QueryResult< | |||||||
|   GetUserTagsQuery, |   GetUserTagsQuery, | ||||||
|   GetUserTagsQueryVariables |   GetUserTagsQueryVariables | ||||||
| >; | >; | ||||||
|  | export const FollowUserDocument = gql` | ||||||
|  |   mutation followUser($followedUserId: Int!) { | ||||||
|  |     followUser(followedUserId: $followedUserId) { | ||||||
|  |       username | ||||||
|  |       following { | ||||||
|  |         id | ||||||
|  |       } | ||||||
|  |       followers { | ||||||
|  |         id | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | `; | ||||||
|  | export type FollowUserMutationFn = Apollo.MutationFunction< | ||||||
|  |   FollowUserMutation, | ||||||
|  |   FollowUserMutationVariables | ||||||
|  | >; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * __useFollowUserMutation__ | ||||||
|  |  * | ||||||
|  |  * To run a mutation, you first call `useFollowUserMutation` within a React component and pass it any options that fit your needs. | ||||||
|  |  * When your component renders, `useFollowUserMutation` returns a tuple that includes: | ||||||
|  |  * - A mutate function that you can call at any time to execute the mutation | ||||||
|  |  * - An object with fields that represent the current status of the mutation's execution | ||||||
|  |  * | ||||||
|  |  * @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2; | ||||||
|  |  * | ||||||
|  |  * @example | ||||||
|  |  * const [followUserMutation, { data, loading, error }] = useFollowUserMutation({ | ||||||
|  |  *   variables: { | ||||||
|  |  *      followedUserId: // value for 'followedUserId' | ||||||
|  |  *   }, | ||||||
|  |  * }); | ||||||
|  |  */ | ||||||
|  | export function useFollowUserMutation( | ||||||
|  |   baseOptions?: Apollo.MutationHookOptions< | ||||||
|  |     FollowUserMutation, | ||||||
|  |     FollowUserMutationVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useMutation<FollowUserMutation, FollowUserMutationVariables>( | ||||||
|  |     FollowUserDocument, | ||||||
|  |     options, | ||||||
|  |   ); | ||||||
|  | } | ||||||
|  | export type FollowUserMutationHookResult = ReturnType< | ||||||
|  |   typeof useFollowUserMutation | ||||||
|  | >; | ||||||
|  | export type FollowUserMutationResult = | ||||||
|  |   Apollo.MutationResult<FollowUserMutation>; | ||||||
|  | export type FollowUserMutationOptions = Apollo.BaseMutationOptions< | ||||||
|  |   FollowUserMutation, | ||||||
|  |   FollowUserMutationVariables | ||||||
|  | >; | ||||||
|  | export const UnfollowUserDocument = gql` | ||||||
|  |   mutation unfollowUser($followedUserId: Int!) { | ||||||
|  |     unfollowUser(followedUserId: $followedUserId) { | ||||||
|  |       username | ||||||
|  |       following { | ||||||
|  |         id | ||||||
|  |       } | ||||||
|  |       followers { | ||||||
|  |         id | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | `; | ||||||
|  | export type UnfollowUserMutationFn = Apollo.MutationFunction< | ||||||
|  |   UnfollowUserMutation, | ||||||
|  |   UnfollowUserMutationVariables | ||||||
|  | >; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * __useUnfollowUserMutation__ | ||||||
|  |  * | ||||||
|  |  * To run a mutation, you first call `useUnfollowUserMutation` within a React component and pass it any options that fit your needs. | ||||||
|  |  * When your component renders, `useUnfollowUserMutation` returns a tuple that includes: | ||||||
|  |  * - A mutate function that you can call at any time to execute the mutation | ||||||
|  |  * - An object with fields that represent the current status of the mutation's execution | ||||||
|  |  * | ||||||
|  |  * @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2; | ||||||
|  |  * | ||||||
|  |  * @example | ||||||
|  |  * const [unfollowUserMutation, { data, loading, error }] = useUnfollowUserMutation({ | ||||||
|  |  *   variables: { | ||||||
|  |  *      followedUserId: // value for 'followedUserId' | ||||||
|  |  *   }, | ||||||
|  |  * }); | ||||||
|  |  */ | ||||||
|  | export function useUnfollowUserMutation( | ||||||
|  |   baseOptions?: Apollo.MutationHookOptions< | ||||||
|  |     UnfollowUserMutation, | ||||||
|  |     UnfollowUserMutationVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useMutation< | ||||||
|  |     UnfollowUserMutation, | ||||||
|  |     UnfollowUserMutationVariables | ||||||
|  |   >(UnfollowUserDocument, options); | ||||||
|  | } | ||||||
|  | export type UnfollowUserMutationHookResult = ReturnType< | ||||||
|  |   typeof useUnfollowUserMutation | ||||||
|  | >; | ||||||
|  | export type UnfollowUserMutationResult = | ||||||
|  |   Apollo.MutationResult<UnfollowUserMutation>; | ||||||
|  | export type UnfollowUserMutationOptions = Apollo.BaseMutationOptions< | ||||||
|  |   UnfollowUserMutation, | ||||||
|  |   UnfollowUserMutationVariables | ||||||
|  | >; | ||||||
|  | export const GetUserFollowingFollowersDocument = gql` | ||||||
|  |   query getUserFollowingFollowers { | ||||||
|  |     getLoggedInUser { | ||||||
|  |       id | ||||||
|  |       following { | ||||||
|  |         id | ||||||
|  |         username | ||||||
|  |       } | ||||||
|  |       followers { | ||||||
|  |         id | ||||||
|  |         username | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | `; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * __useGetUserFollowingFollowersQuery__ | ||||||
|  |  * | ||||||
|  |  * To run a query within a React component, call `useGetUserFollowingFollowersQuery` and pass it any options that fit your needs. | ||||||
|  |  * When your component renders, `useGetUserFollowingFollowersQuery` 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 } = useGetUserFollowingFollowersQuery({ | ||||||
|  |  *   variables: { | ||||||
|  |  *   }, | ||||||
|  |  * }); | ||||||
|  |  */ | ||||||
|  | export function useGetUserFollowingFollowersQuery( | ||||||
|  |   baseOptions?: Apollo.QueryHookOptions< | ||||||
|  |     GetUserFollowingFollowersQuery, | ||||||
|  |     GetUserFollowingFollowersQueryVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useQuery< | ||||||
|  |     GetUserFollowingFollowersQuery, | ||||||
|  |     GetUserFollowingFollowersQueryVariables | ||||||
|  |   >(GetUserFollowingFollowersDocument, options); | ||||||
|  | } | ||||||
|  | export function useGetUserFollowingFollowersLazyQuery( | ||||||
|  |   baseOptions?: Apollo.LazyQueryHookOptions< | ||||||
|  |     GetUserFollowingFollowersQuery, | ||||||
|  |     GetUserFollowingFollowersQueryVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useLazyQuery< | ||||||
|  |     GetUserFollowingFollowersQuery, | ||||||
|  |     GetUserFollowingFollowersQueryVariables | ||||||
|  |   >(GetUserFollowingFollowersDocument, options); | ||||||
|  | } | ||||||
|  | export function useGetUserFollowingFollowersSuspenseQuery( | ||||||
|  |   baseOptions?: Apollo.SuspenseQueryHookOptions< | ||||||
|  |     GetUserFollowingFollowersQuery, | ||||||
|  |     GetUserFollowingFollowersQueryVariables | ||||||
|  |   >, | ||||||
|  | ) { | ||||||
|  |   const options = { ...defaultOptions, ...baseOptions }; | ||||||
|  |   return Apollo.useSuspenseQuery< | ||||||
|  |     GetUserFollowingFollowersQuery, | ||||||
|  |     GetUserFollowingFollowersQueryVariables | ||||||
|  |   >(GetUserFollowingFollowersDocument, options); | ||||||
|  | } | ||||||
|  | export type GetUserFollowingFollowersQueryHookResult = ReturnType< | ||||||
|  |   typeof useGetUserFollowingFollowersQuery | ||||||
|  | >; | ||||||
|  | export type GetUserFollowingFollowersLazyQueryHookResult = ReturnType< | ||||||
|  |   typeof useGetUserFollowingFollowersLazyQuery | ||||||
|  | >; | ||||||
|  | export type GetUserFollowingFollowersSuspenseQueryHookResult = ReturnType< | ||||||
|  |   typeof useGetUserFollowingFollowersSuspenseQuery | ||||||
|  | >; | ||||||
|  | export type GetUserFollowingFollowersQueryResult = Apollo.QueryResult< | ||||||
|  |   GetUserFollowingFollowersQuery, | ||||||
|  |   GetUserFollowingFollowersQueryVariables | ||||||
|  | >; | ||||||
| export const GetStreamMonitoringDetailsDocument = gql` | export const GetStreamMonitoringDetailsDocument = gql` | ||||||
|   query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) { |   query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) { | ||||||
|     getVideo(videoId: $videoId, debuggingJson: $debuggingJson) { |     getVideo(videoId: $videoId, debuggingJson: $debuggingJson) { | ||||||
| @@ -5219,6 +5597,7 @@ export const GetStreamMonitoringDetailsDocument = gql` | |||||||
|         } |         } | ||||||
|       } |       } | ||||||
|       stream { |       stream { | ||||||
|  |         id | ||||||
|         linksRequested |         linksRequested | ||||||
|         uploadsCompleted |         uploadsCompleted | ||||||
|         segmentProcessingCursor |         segmentProcessingCursor | ||||||
| @@ -5726,6 +6105,7 @@ export const GetVideoDocument = gql` | |||||||
|         } |         } | ||||||
|       } |       } | ||||||
|       stream { |       stream { | ||||||
|  |         id | ||||||
|         streamSegmentType |         streamSegmentType | ||||||
|         segments { |         segments { | ||||||
|           segmentIndex |           segmentIndex | ||||||
|   | |||||||
| @@ -21,6 +21,7 @@ query GetFeed( | |||||||
|       elapsedTime |       elapsedTime | ||||||
|       screenshotUri |       screenshotUri | ||||||
|       stream { |       stream { | ||||||
|  |         id | ||||||
|         isCompleted |         isCompleted | ||||||
|       } |       } | ||||||
|       tableSize |       tableSize | ||||||
|   | |||||||
| @@ -22,23 +22,34 @@ mutation UpdateShotAnnotations( | |||||||
|   $annotations: [UpdateAnnotationInputGQL!]! |   $annotations: [UpdateAnnotationInputGQL!]! | ||||||
| ) { | ) { | ||||||
|   updateShotAnnotations(shotId: $shotId, annotations: $annotations) { |   updateShotAnnotations(shotId: $shotId, annotations: $annotations) { | ||||||
|     value { |     shot { | ||||||
|       ... on SuccessfulUpdate { |       id | ||||||
|         value |       annotations { | ||||||
|  |         shotId | ||||||
|  |         type { | ||||||
|  |           id | ||||||
|  |           name | ||||||
|  |         } | ||||||
|  |         notes | ||||||
|  |       } | ||||||
|     } |     } | ||||||
|       ... on UpdateShotAnnotationErrors { |  | ||||||
|     error { |     error { | ||||||
|       shotId |       shotId | ||||||
|       msg |       msg | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|     } |  | ||||||
|   } |  | ||||||
| } | } | ||||||
|  |  | ||||||
| query GetShotsWithVideoGql($filterInput: FilterInput!, $limit: Int) { | query GetShotsWithVideoGql( | ||||||
|   getShotsWithMetadata(filterInput: $filterInput, limit: $limit) { |   $filterInput: FilterInput! | ||||||
|     ids |   $shotsOrdering: GetShotsOrdering | ||||||
|  |   $limit: Int | ||||||
|  | ) { | ||||||
|  |   getOrderedShots( | ||||||
|  |     filterInput: $filterInput | ||||||
|  |     shotsOrdering: $shotsOrdering | ||||||
|  |     limit: $limit | ||||||
|  |   ) { | ||||||
|     shots { |     shots { | ||||||
|       id |       id | ||||||
|       videoId |       videoId | ||||||
|   | |||||||
| @@ -37,6 +37,7 @@ query getLoggedInUser { | |||||||
|     username |     username | ||||||
|     isAdmin |     isAdmin | ||||||
|     profileImageUri |     profileImageUri | ||||||
|  |     fargoRating | ||||||
|     activeVideoId |     activeVideoId | ||||||
|     createdAt |     createdAt | ||||||
|     updatedAt |     updatedAt | ||||||
| @@ -57,9 +58,70 @@ query getUsernames( | |||||||
|   getUsernames(matchString: $matchString, limit: $limit, after: $after) |   getUsernames(matchString: $matchString, limit: $limit, after: $after) | ||||||
| } | } | ||||||
|  |  | ||||||
|  | query getUserRelationshipsMatching( | ||||||
|  |   $userId: Int! | ||||||
|  |   $matchString: String! | ||||||
|  |   $limit: Int = null | ||||||
|  |   $after: String = null | ||||||
|  | ) { | ||||||
|  |   getUserRelationshipsMatching( | ||||||
|  |     userId: $userId | ||||||
|  |     matchString: $matchString | ||||||
|  |     limit: $limit | ||||||
|  |     after: $after | ||||||
|  |   ) { | ||||||
|  |     relationships { | ||||||
|  |       toUser { | ||||||
|  |         username | ||||||
|  |         id | ||||||
|  |       } | ||||||
|  |       toUserFollows | ||||||
|  |       toUserIsFollowedBy | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
| query GetUserTags { | query GetUserTags { | ||||||
|   getUserTags { |   getUserTags { | ||||||
|     id |     id | ||||||
|     name |     name | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | mutation followUser($followedUserId: Int!) { | ||||||
|  |   followUser(followedUserId: $followedUserId) { | ||||||
|  |     username | ||||||
|  |     following { | ||||||
|  |       id | ||||||
|  |     } | ||||||
|  |     followers { | ||||||
|  |       id | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | mutation unfollowUser($followedUserId: Int!) { | ||||||
|  |   unfollowUser(followedUserId: $followedUserId) { | ||||||
|  |     username | ||||||
|  |     following { | ||||||
|  |       id | ||||||
|  |     } | ||||||
|  |     followers { | ||||||
|  |       id | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | query getUserFollowingFollowers { | ||||||
|  |   getLoggedInUser { | ||||||
|  |     id | ||||||
|  |     following { | ||||||
|  |       id | ||||||
|  |       username | ||||||
|  |     } | ||||||
|  |     followers { | ||||||
|  |       id | ||||||
|  |       username | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|   | |||||||
| @@ -45,6 +45,7 @@ query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) { | |||||||
|       } |       } | ||||||
|     } |     } | ||||||
|     stream { |     stream { | ||||||
|  |       id | ||||||
|       linksRequested |       linksRequested | ||||||
|       uploadsCompleted |       uploadsCompleted | ||||||
|       segmentProcessingCursor |       segmentProcessingCursor | ||||||
| @@ -194,6 +195,7 @@ query GetVideo($videoId: Int!) { | |||||||
|       } |       } | ||||||
|     } |     } | ||||||
|     stream { |     stream { | ||||||
|  |       id | ||||||
|       streamSegmentType |       streamSegmentType | ||||||
|       segments { |       segments { | ||||||
|         segmentIndex |         segmentIndex | ||||||
|   | |||||||
| @@ -35,12 +35,12 @@ type Query { | |||||||
|     limit: Int = null |     limit: Int = null | ||||||
|     after: String = null |     after: String = null | ||||||
|   ): [String!]! |   ): [String!]! | ||||||
|   getUsernamesAndFollowing( |   getUserRelationshipsMatching( | ||||||
|     userId: Int! |     userId: Int! | ||||||
|     matchString: String = null |     matchString: String = null | ||||||
|     limit: Int = 100 |     limit: Int = 100 | ||||||
|     after: String = null |     after: String = null | ||||||
|   ): UsernamesAndFollowingResponse! |   ): UserRelationshipsResult! | ||||||
|   getPlayTime(userId: Int!): UserPlayTimeGQL! |   getPlayTime(userId: Int!): UserPlayTimeGQL! | ||||||
|   getUserVideos( |   getUserVideos( | ||||||
|     userId: Int = null |     userId: Int = null | ||||||
| @@ -341,16 +341,16 @@ type SerializedShotPathsGQL { | |||||||
|  |  | ||||||
| type UserGQL { | type UserGQL { | ||||||
|   id: Int! |   id: Int! | ||||||
|   firebaseUid: String! |   firebaseUid: String | ||||||
|   username: String! |   username: String! | ||||||
|   isAdmin: Boolean! |   isAdmin: Boolean | ||||||
|   fargoRating: Int |   fargoRating: Int | ||||||
|   activeVideoId: Int |   activeVideoId: Int | ||||||
|   profileImageUri: String |   profileImageUri: String | ||||||
|   createdAt: DateTime |   createdAt: DateTime | ||||||
|   updatedAt: DateTime |   updatedAt: DateTime | ||||||
|   following: [Int!] |   following: [UserGQL!] | ||||||
|   followers: [Int!] |   followers: [UserGQL!] | ||||||
| } | } | ||||||
|  |  | ||||||
| type ShotAnnotationGQL { | type ShotAnnotationGQL { | ||||||
| @@ -554,10 +554,15 @@ input CreatedAfter @oneOf { | |||||||
|   createdAt: DateTime |   createdAt: DateTime | ||||||
| } | } | ||||||
|  |  | ||||||
| type UsernamesAndFollowingResponse { | type UserRelationshipsResult { | ||||||
|   usernames: [String!]! |   inquiringUser: UserGQL! | ||||||
|   following: [Int!]! |   relationships: [UserRelationship!]! | ||||||
|   followers: [Int!]! | } | ||||||
|  |  | ||||||
|  | type UserRelationship { | ||||||
|  |   toUser: UserGQL! | ||||||
|  |   toUserFollows: Boolean! | ||||||
|  |   toUserIsFollowedBy: Boolean! | ||||||
| } | } | ||||||
|  |  | ||||||
| type UserPlayTimeGQL { | type UserPlayTimeGQL { | ||||||
| @@ -662,18 +667,7 @@ type OtherErrorNeedsNote { | |||||||
| } | } | ||||||
|  |  | ||||||
| type UpdateShotAnnotationReturn { | type UpdateShotAnnotationReturn { | ||||||
|   value: SuccessfulUpdateUpdateShotAnnotationErrors! |   shot: ShotGQL | ||||||
| } |  | ||||||
|  |  | ||||||
| union SuccessfulUpdateUpdateShotAnnotationErrors = |  | ||||||
|     SuccessfulUpdate |  | ||||||
|   | UpdateShotAnnotationErrors |  | ||||||
|  |  | ||||||
| type SuccessfulUpdate { |  | ||||||
|   value: Boolean! |  | ||||||
| } |  | ||||||
|  |  | ||||||
| type UpdateShotAnnotationErrors { |  | ||||||
|   error: DoesNotOwnShotErr |   error: DoesNotOwnShotErr | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user