Compare commits
	
		
			79 Commits
		
	
	
		
			9db95c4e6c
			...
			mk/extend-
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| fd87ade629 | |||
| 1fab007654 | |||
| cd2cdb475a | |||
| c3c74379fb | |||
| da21627f15 | |||
| 8fabfd67cf | |||
| e6960038f2 | |||
| b6ec7ed39d | |||
| 545ba638c2 | |||
| 94e4e55558 | |||
| 2536f5db6b | |||
| ffd0814a98 | |||
| 55bfe42484 | |||
| dabb0d1d9c | |||
| a538c1d81c | |||
| 872bce3adb | |||
| 457d375bed | |||
| 12798e368c | |||
| a3d6e6e19e | |||
| f7a6e393e7 | |||
| ee11e506ed | |||
| 90ec47848b | |||
| 21acb5219d | |||
| 087d511efc | |||
| 7cc0dca821 | |||
| f826121aa3 | |||
| 2aadb8b49b | |||
| 5468b7ccda | |||
| 08dfafe1a3 | |||
| 36b6804719 | |||
| 0120c15064 | |||
| 9cc99d956a | |||
| 985fa8b8e5 | |||
| c4868e7ebe | |||
| 58e1c18034 | |||
| 592dea0ca2 | |||
| 0e00ae9297 | |||
| e16812f242 | |||
| 3e9b7a0d16 | |||
| 309deb9473 | |||
| d5ba9c2ba5 | |||
| 73771a263a | |||
| 655e59c43c | |||
| 056120a68a | |||
| bd7ffa7fdb | |||
| ec58923c65 | |||
| 63869cd7ca | |||
| 08ae9611cf | |||
| 4e610b7df2 | |||
| 2d6d3964ad | |||
| 73a58de36e | |||
| dc6f246489 | |||
| c0a3aa97dc | |||
| f4e43b24f2 | |||
| 51ab8320d7 | |||
| f9a00ad3eb | |||
| 998b2ffc8c | |||
| c7642e6204 | |||
| b2ce1c2f96 | |||
| d0cf071934 | |||
| 6b410b3d78 | |||
| 607504261c | |||
| 0421be855d | |||
| 014aab473b | |||
| 353872401e | |||
| 433dfdaf74 | |||
| a2d9e688e9 | |||
| b3259dac1f | |||
| 0982b9e60c | |||
| 1710ae451c | |||
| de9e7dea6a | |||
| cfcf1dbcd2 | |||
| 05e3182e8b | |||
| baf139aab5 | |||
| b3b454ef83 | |||
| f6e4a1bc0b | |||
| 9d8155527d | |||
| 8690e81029 | |||
| 4ef13a482a | 
							
								
								
									
										1288
									
								
								src/index.tsx
									
									
									
									
									
								
							
							
						
						
									
										1288
									
								
								src/index.tsx
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,3 +1,4 @@ | ||||
| # DO NOT USE: use getVideoFeed instead | ||||
| query GetFeed( | ||||
|   $limit: Int! = 5 | ||||
|   $after: String = null | ||||
| @@ -5,32 +6,71 @@ query GetFeed( | ||||
| ) { | ||||
|   getUserVideos(limit: $limit, after: $after, filters: $filters) { | ||||
|     videos { | ||||
|       id | ||||
|       owner { | ||||
|         username | ||||
|       } | ||||
|       name | ||||
|       screenshotUri | ||||
|       totalShotsMade | ||||
|       totalShots | ||||
|       makePercentage | ||||
|       createdAt | ||||
|       updatedAt | ||||
|       startTime | ||||
|       endTime | ||||
|       elapsedTime | ||||
|       screenshotUri | ||||
|       stream { | ||||
|         id | ||||
|         isCompleted | ||||
|       } | ||||
|       tableSize | ||||
|       tags { | ||||
|         tagClasses { | ||||
|           name | ||||
|         } | ||||
|         name | ||||
|       } | ||||
|       ...VideoCardFields | ||||
|     } | ||||
|     pageInfo { | ||||
|       hasNextPage | ||||
|       endCursor | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| fragment VideoCardFields on VideoGQL { | ||||
|   id | ||||
|   owner { | ||||
|     id | ||||
|     username | ||||
|     profileImageUri | ||||
|   } | ||||
|   name | ||||
|   screenshotUri | ||||
|   totalShotsMade | ||||
|   totalShots | ||||
|   makePercentage | ||||
|   createdAt | ||||
|   updatedAt | ||||
|   startTime | ||||
|   endTime | ||||
|   private | ||||
|   elapsedTime | ||||
|   screenshotUri | ||||
|   stream { | ||||
|     id | ||||
|     isCompleted | ||||
|   } | ||||
|   tableSize | ||||
|   tags { | ||||
|     tagClasses { | ||||
|       name | ||||
|     } | ||||
|     name | ||||
|   } | ||||
|   currentProcessing { | ||||
|     id | ||||
|     errors { | ||||
|       message | ||||
|     } | ||||
|     status | ||||
|     statuses { | ||||
|       status | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| query GetVideoFeed( | ||||
|   $limit: Int! = 5 | ||||
|   $after: String = null | ||||
|   $filters: VideoFilterInput = null | ||||
|   $includeCallersVideos: Boolean = null | ||||
| ) { | ||||
|   getFeedVideos( | ||||
|     limit: $limit | ||||
|     after: $after | ||||
|     filters: $filters | ||||
|     includeCallersVideos: $includeCallersVideos | ||||
|   ) { | ||||
|     videos { | ||||
|       ...VideoCardFields | ||||
|     } | ||||
|     pageInfo { | ||||
|       hasNextPage | ||||
|   | ||||
							
								
								
									
										84
									
								
								src/operations/medals.gql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								src/operations/medals.gql
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,84 @@ | ||||
| query getMedals($scope: MedalScope!, $userId: Int) { | ||||
|   getMedals(scope: $scope, userId: $userId) { | ||||
|     distanceOver66 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     distanceOver78 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     distanceOver90 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength3 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength5 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength8 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength10 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength15 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength20 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength25 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength30 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength40 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     runLength50 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes25 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes50 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes75 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes100 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes200 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes300 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|     totalMakes400 { | ||||
|       count | ||||
|       nickname | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @@ -40,6 +40,7 @@ mutation UpdateShotAnnotations( | ||||
|   } | ||||
| } | ||||
|  | ||||
| ## Should be deprecated | ||||
| query GetShotsWithVideoGql( | ||||
|   $filterInput: FilterInput! | ||||
|   $shotsOrdering: GetShotsOrdering | ||||
| @@ -61,18 +62,40 @@ query GetShotsWithVideoGql( | ||||
|   } | ||||
| } | ||||
|  | ||||
| query GetShotsWithJustIds( | ||||
|   $filterInput: FilterInput! | ||||
|   $shotsOrdering: GetShotsOrdering | ||||
|   $limit: Int | ||||
|   $countRespectsLimit: Boolean | ||||
| ) { | ||||
|   getOrderedShots( | ||||
|     filterInput: $filterInput | ||||
|     shotsOrdering: $shotsOrdering | ||||
|     limit: $limit | ||||
|     countRespectsLimit: $countRespectsLimit | ||||
|   ) { | ||||
|     count | ||||
|     shots { | ||||
|       id | ||||
|       videoId | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| ## Reserved for playlists (which are created from a filter) | ||||
| query GetShotsWithMetadataFilterResult( | ||||
|   $filterInput: FilterInput! | ||||
|   $shotsOrdering: GetShotsOrdering | ||||
|   $limit: Int | ||||
|   $ids: [Int!] | ||||
|   $countRespectsLimit: Boolean | ||||
| ) { | ||||
|   getOrderedShots( | ||||
|     filterInput: $filterInput | ||||
|     shotsOrdering: $shotsOrdering | ||||
|     limit: $limit | ||||
|     ids: $ids | ||||
|     countRespectsLimit: $countRespectsLimit | ||||
|   ) { | ||||
|     count | ||||
|     shots { | ||||
| @@ -136,6 +159,7 @@ fragment ShotWithAllFeatures on ShotGQL { | ||||
|     targetPocketAngleDirection | ||||
|     marginOfErrorInDegrees | ||||
|     intendedPocketType | ||||
|     difficulty | ||||
|   } | ||||
|   pocketingIntentionInfo { | ||||
|     ballId | ||||
|   | ||||
| @@ -41,11 +41,12 @@ query getLoggedInUser { | ||||
|     activeVideoId | ||||
|     createdAt | ||||
|     updatedAt | ||||
|     videosPrivateByDefault | ||||
|   } | ||||
| } | ||||
|  | ||||
| query GetUserPlayTime($userId: Int!) { | ||||
|   getPlayTime(userId: $userId) { | ||||
| query GetUserPlayTime($userId: Int!, $filters: VideoFilterInput) { | ||||
|   getPlayTime(userId: $userId, filters: $filters) { | ||||
|     totalSeconds | ||||
|   } | ||||
| } | ||||
| @@ -91,11 +92,14 @@ query GetUserTags { | ||||
| mutation followUser($followedUserId: Int!) { | ||||
|   followUser(followedUserId: $followedUserId) { | ||||
|     username | ||||
|     id | ||||
|     following { | ||||
|       id | ||||
|       username | ||||
|     } | ||||
|     followers { | ||||
|       id | ||||
|       username | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @@ -103,11 +107,14 @@ mutation followUser($followedUserId: Int!) { | ||||
| mutation unfollowUser($followedUserId: Int!) { | ||||
|   unfollowUser(followedUserId: $followedUserId) { | ||||
|     username | ||||
|     id | ||||
|     following { | ||||
|       id | ||||
|       username | ||||
|     } | ||||
|     followers { | ||||
|       id | ||||
|       username | ||||
|     } | ||||
|   } | ||||
| } | ||||
| @@ -125,3 +132,28 @@ query getUserFollowingFollowers { | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| query doesUsernameExist($candidateUsername: String!) { | ||||
|   doesUsernameExist(candidateUsername: $candidateUsername) | ||||
| } | ||||
|  | ||||
| mutation editUser( | ||||
|   $username: String | ||||
|   $fargoRating: Int | ||||
|   $videosPrivateByDefault: Boolean | ||||
| ) { | ||||
|   editUser( | ||||
|     input: { | ||||
|       username: $username | ||||
|       fargoRating: $fargoRating | ||||
|       videosPrivateByDefault: $videosPrivateByDefault | ||||
|     } | ||||
|   ) { | ||||
|     id | ||||
|     firebaseUid | ||||
|     username | ||||
|     fargoRating | ||||
|     updatedAt | ||||
|     videosPrivateByDefault | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -5,44 +5,7 @@ query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) { | ||||
|     makePercentage | ||||
|     elapsedTime | ||||
|     currentHomography { | ||||
|       crop { | ||||
|         left | ||||
|         top | ||||
|         width | ||||
|         height | ||||
|       } | ||||
|       pockets { | ||||
|         left | ||||
|         top | ||||
|         width | ||||
|         height | ||||
|       } | ||||
|       sourcePoints { | ||||
|         topLeft { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         topSide { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         topRight { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         bottomLeft { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         bottomSide { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         bottomRight { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|       } | ||||
|       ...HomographyInfo | ||||
|     } | ||||
|     stream { | ||||
|       id | ||||
| @@ -55,6 +18,7 @@ query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) { | ||||
|       initPlaylistUploadStatus | ||||
|     } | ||||
|     currentProcessing { | ||||
|       id | ||||
|       errors { | ||||
|         message | ||||
|         startSegmentIndex | ||||
| @@ -154,45 +118,7 @@ query GetVideo($videoId: Int!) { | ||||
|       segmentDurations | ||||
|     } | ||||
|     homographyHistory { | ||||
|       frameIndex | ||||
|       crop { | ||||
|         left | ||||
|         top | ||||
|         width | ||||
|         height | ||||
|       } | ||||
|       pockets { | ||||
|         left | ||||
|         top | ||||
|         width | ||||
|         height | ||||
|       } | ||||
|       sourcePoints { | ||||
|         topLeft { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         topSide { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         topRight { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         bottomLeft { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         bottomSide { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|         bottomRight { | ||||
|           x | ||||
|           y | ||||
|         } | ||||
|       } | ||||
|       ...HomographyInfo | ||||
|     } | ||||
|     stream { | ||||
|       id | ||||
| @@ -288,3 +214,51 @@ query GetHeaderInfoByVideoId($videoId: Int!) { | ||||
|     startTime | ||||
|   } | ||||
| } | ||||
|  | ||||
| mutation FindPrerecordTableLayout($b64Image: String!, $videoId: Int!) { | ||||
|   findPrerecordTableLayout(b64Image: $b64Image, videoId: $videoId) { | ||||
|     ...HomographyInfo | ||||
|   } | ||||
| } | ||||
|  | ||||
| fragment HomographyInfo on HomographyInfoGQL { | ||||
|   frameIndex | ||||
|   crop { | ||||
|     left | ||||
|     top | ||||
|     width | ||||
|     height | ||||
|   } | ||||
|   pockets { | ||||
|     left | ||||
|     top | ||||
|     width | ||||
|     height | ||||
|   } | ||||
|   sourcePoints { | ||||
|     topLeft { | ||||
|       x | ||||
|       y | ||||
|     } | ||||
|     topSide { | ||||
|       x | ||||
|       y | ||||
|     } | ||||
|     topRight { | ||||
|       x | ||||
|       y | ||||
|     } | ||||
|     bottomLeft { | ||||
|       x | ||||
|       y | ||||
|     } | ||||
|     bottomSide { | ||||
|       x | ||||
|       y | ||||
|     } | ||||
|     bottomRight { | ||||
|       x | ||||
|       y | ||||
|     } | ||||
|   } | ||||
| } | ||||
|   | ||||
							
								
								
									
										158
									
								
								src/schema.gql
									
									
									
									
									
								
							
							
						
						
									
										158
									
								
								src/schema.gql
									
									
									
									
									
								
							| @@ -9,26 +9,38 @@ type Query { | ||||
|     videoId: ID! | ||||
|     intervalDuration: Int! = 300 | ||||
|   ): [MakePercentageIntervalGQL!]! | ||||
|   getMedals(scope: MedalScope!, userId: Int = null): RequestedMedalsGQL! | ||||
|   getRuns( | ||||
|     filterInput: RunFilterInput! | ||||
|     runIds: [Int!] = null | ||||
|     runsOrdering: GetRunsOrdering = null | ||||
|     limit: Int! = 500 | ||||
|     countRespectsLimit: Boolean! = false | ||||
|   ): GetRunsResult! | ||||
|   getOrderedShots( | ||||
|     filterInput: FilterInput! | ||||
|     ids: [Int!] = null | ||||
|     shotsOrdering: GetShotsOrdering = null | ||||
|     limit: Int! = 500 | ||||
|     countRespectsLimit: Boolean! = false | ||||
|   ): GetShotsResult! | ||||
|   getShotsWithMetadata( | ||||
|     filterInput: FilterInput! | ||||
|     ids: [Int!] = null | ||||
|     shotsPagination: GetShotsPagination = null | ||||
|     limit: Int! = 500 | ||||
|     countRespectsLimit: Boolean! = false | ||||
|   ): GetShotsResult! | ||||
|   getShots( | ||||
|     filterInput: FilterInput! | ||||
|     shotsPagination: GetShotsPagination = null | ||||
|     limit: Int! = 500 | ||||
|     countRespectsLimit: Boolean! = false | ||||
|   ): [ShotGQL!]! | ||||
|   getShotsByIds(ids: [Int!]!): [ShotGQL!]! | ||||
|   getShotAnnotationTypes(errorTypes: Boolean = false): [ShotAnnotationTypeGQL!]! | ||||
|   getUser(userId: Int!): UserGQL | ||||
|   doesUsernameExist(candidateUsername: String!): Boolean! | ||||
|   getLoggedInUser: UserGQL | ||||
|   getUsernames( | ||||
|     matchString: String = null | ||||
| @@ -41,7 +53,7 @@ type Query { | ||||
|     limit: Int = 100 | ||||
|     after: String = null | ||||
|   ): UserRelationshipsResult! | ||||
|   getPlayTime(userId: Int!): UserPlayTimeGQL! | ||||
|   getPlayTime(userId: Int!, filters: VideoFilterInput = null): UserPlayTimeGQL! | ||||
|   getUserVideos( | ||||
|     userId: Int = null | ||||
|     limit: Int! = 5 | ||||
| @@ -54,6 +66,7 @@ type Query { | ||||
|   getFeedVideos( | ||||
|     limit: Int! = 5 | ||||
|     after: String = null | ||||
|     includeCallersVideos: Boolean = true | ||||
|     filters: VideoFilterInput = null | ||||
|   ): VideoHistoryGQL! | ||||
| } | ||||
| @@ -266,10 +279,61 @@ type MakePercentageIntervalGQL { | ||||
|   elapsedTime: Float! | ||||
| } | ||||
|  | ||||
| type GetShotsResult { | ||||
|   shots: [ShotGQL!]! | ||||
| type RequestedMedalsGQL { | ||||
|   distanceOver66: MedalGQL | ||||
|   distanceOver78: MedalGQL | ||||
|   distanceOver90: MedalGQL | ||||
|   runLength3: MedalGQL | ||||
|   runLength5: MedalGQL | ||||
|   runLength8: MedalGQL | ||||
|   runLength10: MedalGQL | ||||
|   runLength15: MedalGQL | ||||
|   runLength20: MedalGQL | ||||
|   runLength25: MedalGQL | ||||
|   runLength30: MedalGQL | ||||
|   runLength40: MedalGQL | ||||
|   runLength50: MedalGQL | ||||
|   totalMakes25: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes50: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes75: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes200: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes300: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes400: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes750: MedalGQL @deprecated(reason: "no longer supported") | ||||
|   totalMakes100: MedalGQL | ||||
|   totalMakes500: MedalGQL | ||||
|   totalMakes1000: MedalGQL | ||||
|   totalMakes5000: MedalGQL | ||||
|   totalMakes10000: MedalGQL | ||||
|   dailyMakes50: MedalGQL | ||||
|   dailyMakes100: MedalGQL | ||||
|   dailyMakes150: MedalGQL | ||||
|   dailyMakes200: MedalGQL | ||||
|   dailyMakes250: MedalGQL | ||||
| } | ||||
|  | ||||
| type MedalGQL { | ||||
|   count: Int! | ||||
|   nickname: String | ||||
| } | ||||
|  | ||||
| input MedalScope @oneOf { | ||||
|   videoId: Int | ||||
|   interval: TimeInterval | ||||
| } | ||||
|  | ||||
| type GetRunsResult { | ||||
|   runs: [RunGQL!]! | ||||
|   count: Int | ||||
|   ids: [Int!]! | ||||
|   runIds: [Int!]! | ||||
| } | ||||
|  | ||||
| type RunGQL { | ||||
|   id: Int! | ||||
|   runLength: Int! | ||||
|   videoId: Int! | ||||
|   userId: Int! | ||||
|   shots: [ShotGQL!]! | ||||
| } | ||||
|  | ||||
| type ShotGQL { | ||||
| @@ -349,6 +413,7 @@ type UserGQL { | ||||
|   profileImageUri: String | ||||
|   createdAt: DateTime | ||||
|   updatedAt: DateTime | ||||
|   videosPrivateByDefault: Boolean | ||||
|   following: [UserGQL!] | ||||
|   followers: [UserGQL!] | ||||
| } | ||||
| @@ -386,6 +451,7 @@ type VideoGQL { | ||||
|   elapsedTime: Float | ||||
|   framesPerSecond: Float! | ||||
|   tableSize: Float! | ||||
|   private: Boolean! | ||||
|   stream: UploadStreamGQL | ||||
|   playlist: HLSPlaylistGQL | ||||
|   tags: [VideoTag!]! | ||||
| @@ -408,6 +474,7 @@ type UploadStreamGQL { | ||||
|   createdAt: DateTime! | ||||
|   updatedAt: DateTime! | ||||
|   segments: [UploadSegmentGQL!]! | ||||
|   clientUploadStatus: ClientUploadStatusEnum | ||||
|   resolution: VideoResolutionGQL! | ||||
|   streamSegmentType: StreamSegmentTypeEnum! | ||||
| } | ||||
| @@ -432,6 +499,11 @@ type UploadSegmentGQL { | ||||
|   linksRequested: Int! | ||||
| } | ||||
|  | ||||
| enum ClientUploadStatusEnum { | ||||
|   UPLOAD_ENABLED | ||||
|   UPLOAD_DISABLED | ||||
| } | ||||
|  | ||||
| type VideoResolutionGQL { | ||||
|   width: Int | ||||
|   height: Int | ||||
| @@ -458,6 +530,7 @@ type VideoTagClass { | ||||
| } | ||||
|  | ||||
| type HomographyInfoGQL { | ||||
|   id: Int! | ||||
|   frameIndex: Int! | ||||
|   crop: BoundingBoxGQL! | ||||
|   pockets: [BoundingBoxGQL!]! | ||||
| @@ -487,6 +560,7 @@ type IntPoint2D { | ||||
| } | ||||
|  | ||||
| type VideoProcessingGQL { | ||||
|   id: Int! | ||||
|   errors: [VideoProcessingErrorGQL!]! | ||||
|   status: ProcessingStatusEnum! | ||||
|   statuses: [VideoProcessingStatusGQL!]! | ||||
| @@ -517,33 +591,61 @@ type VideoProcessingStatusGQL { | ||||
|   updatedAt: DateTime | ||||
| } | ||||
|  | ||||
| input RunFilterInput { | ||||
|   videoId: [Int!] | ||||
|   userId: [Int!] | ||||
|   username: [String!] | ||||
|   andFilters: [RunFilterInput!] | ||||
|   orFilters: [RunFilterInput!] | ||||
|   notFilter: RunFilterInput | ||||
|   tableSize: FloatRangeFilter | ||||
|   createdAt: DateRangeFilter | ||||
|   runLength: FloatRangeFilter | ||||
| } | ||||
|  | ||||
| input GetRunsOrdering { | ||||
|   orderings: [RunsOrderingComponent!]! | ||||
| } | ||||
|  | ||||
| input RunsOrderingComponent @oneOf { | ||||
|   runLength: IntOrdering | ||||
|   videoId: IntOrdering | ||||
|   videoCreation: DatetimeOrdering | ||||
| } | ||||
|  | ||||
| input IntOrdering { | ||||
|   descending: Boolean! = true | ||||
|   startingAt: Int = null | ||||
| } | ||||
|  | ||||
| input DatetimeOrdering { | ||||
|   descending: Boolean! = true | ||||
|   startingAt: DateTime = null | ||||
| } | ||||
|  | ||||
| type GetShotsResult { | ||||
|   shots: [ShotGQL!]! | ||||
|   count: Int | ||||
|   ids: [Int!]! | ||||
| } | ||||
|  | ||||
| input GetShotsOrdering { | ||||
|   orderings: [ShotsOrderingComponent!]! | ||||
| } | ||||
|  | ||||
| input ShotsOrderingComponent @oneOf { | ||||
|   videoCreation: DatetimeShotOrdering | ||||
|   marginOfError: FloatShotOrdering | ||||
|   videoId: IntShotOrdering | ||||
|   startFrame: IntShotOrdering | ||||
|   runLength: IntShotOrdering | ||||
|   videoCreation: DatetimeOrdering | ||||
|   marginOfError: FloatOrdering | ||||
|   videoId: IntOrdering | ||||
|   startFrame: IntOrdering | ||||
|   runLength: IntOrdering | ||||
| } | ||||
|  | ||||
| input DatetimeShotOrdering { | ||||
|   descending: Boolean! = true | ||||
|   startingAt: DateTime = null | ||||
| } | ||||
|  | ||||
| input FloatShotOrdering { | ||||
| input FloatOrdering { | ||||
|   descending: Boolean! = true | ||||
|   startingAt: Float = null | ||||
| } | ||||
|  | ||||
| input IntShotOrdering { | ||||
|   descending: Boolean! = true | ||||
|   startingAt: Int = null | ||||
| } | ||||
|  | ||||
| input GetShotsPagination { | ||||
|   createdAfter: CreatedAfter! | ||||
|   startFrameAfter: Int! | ||||
| @@ -569,6 +671,13 @@ type UserPlayTimeGQL { | ||||
|   totalSeconds: Float! | ||||
| } | ||||
|  | ||||
| input VideoFilterInput { | ||||
|   isStreamCompleted: Boolean = null | ||||
|   requireCursorCompletion: Boolean! = true | ||||
|   createdAt: DateRangeFilter = null | ||||
|   excludeVideosWithNoShots: Boolean = null | ||||
| } | ||||
|  | ||||
| type VideoHistoryGQL { | ||||
|   videos: [VideoGQL!]! | ||||
|   pageInfo: PageInfoGQL! | ||||
| @@ -579,11 +688,6 @@ type PageInfoGQL { | ||||
|   endCursor: String | ||||
| } | ||||
|  | ||||
| input VideoFilterInput { | ||||
|   isStreamCompleted: Boolean = null | ||||
|   requireCursorCompletion: Boolean! = true | ||||
| } | ||||
|  | ||||
| type TagGQL { | ||||
|   name: String! | ||||
|   id: Int! | ||||
| @@ -617,6 +721,7 @@ type Mutation { | ||||
|   editUser(input: EditUserInputGQL!): UserGQL! | ||||
|   followUser(followedUserId: Int!): UserGQL! | ||||
|   unfollowUser(followedUserId: Int!): UserGQL! | ||||
|   findPrerecordTableLayout(b64Image: String!, videoId: Int!): HomographyInfoGQL | ||||
|   createUploadStream( | ||||
|     videoMetadata: VideoMetadataInput! | ||||
|   ): CreateUploadStreamReturn! | ||||
| @@ -705,6 +810,7 @@ type TooManyProfileImageUploadsErr { | ||||
| input EditUserInputGQL { | ||||
|   username: String = null | ||||
|   fargoRating: Int = null | ||||
|   videosPrivateByDefault: Boolean = null | ||||
| } | ||||
|  | ||||
| type CreateUploadStreamReturn { | ||||
| @@ -719,7 +825,9 @@ input VideoMetadataInput { | ||||
|   tableSize: Float = null | ||||
|   lastIntendedSegmentBound: Int = null | ||||
|   streamSegmentType: StreamSegmentTypeEnum = null | ||||
|   private: Boolean = null | ||||
|   endStream: Boolean! = false | ||||
|   clientUploadStatus: ClientUploadStatusEnum = null | ||||
|   resolution: VideoResolution = null | ||||
|   framesPerSecond: Float = null | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user