Compare commits

...

65 Commits

Author SHA1 Message Date
872bce3adb Merge pull request 'Add ID to user processing' (#134) from kat/add-id-processing into master
Reviewed-on: #134
2024-11-14 00:20:05 -07:00
457d375bed Add ID to user processing
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-11-14 00:18:57 -07:00
12798e368c Merge pull request 'Get user videos' (#132) from volodymyr/get-user-videos into master
Reviewed-on: #132
Reviewed-by: Ivan Malison <ivanmalison@gmail.com>
2024-11-13 15:14:48 -07:00
a3d6e6e19e Merge branch 'master' into volodymyr/get-user-videos
All checks were successful
Tests / Tests (pull_request) Successful in 13s
2024-11-13 15:14:30 -07:00
f7a6e393e7 Merge pull request 'Add excludeVideosWithNoShots filter' (#133) from mk/exclude-no-shots-filter into master
Reviewed-on: #133
2024-11-13 15:13:33 -07:00
ee11e506ed Add excludeVideosWithNoShots filter
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-13 14:12:57 -08:00
90ec47848b Get user videos
All checks were successful
Tests / Tests (pull_request) Successful in 12s
2024-11-13 21:33:50 +01:00
21acb5219d Merge pull request 'Change includeCallersVideos default to True' (#131) from mk/change-caller-video-default into master
Reviewed-on: #131
2024-11-13 12:52:07 -07:00
087d511efc Change includeCallersVideos default to True
All checks were successful
Tests / Tests (pull_request) Successful in 14s
2024-11-13 11:51:29 -08:00
7cc0dca821 Merge pull request 'Add includeCallersVideos to getFeedVideos' (#130) from mk/make-feed-get-only-theirs into master
Reviewed-on: #130
2024-11-13 11:11:22 -07:00
f826121aa3 Add includeCallersVideos to getFeedVideos
All checks were successful
Tests / Tests (pull_request) Successful in 13s
2024-11-13 10:10:11 -08:00
2aadb8b49b Merge pull request 'Add createdAt filterInput to GetUserPlayTime' (#129) from loewy/update-get-play-time-operation into master
Reviewed-on: #129
2024-11-12 14:28:36 -07:00
5468b7ccda add createdAt dateRangeFilter
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-11-12 13:00:18 -08:00
08dfafe1a3 Merge pull request 'Privacy' (#128) from volodymyr/privacy into master
Reviewed-on: #128
Reviewed-by: Kat Huang <kkathuang@gmail.com>
2024-11-12 11:27:56 -07:00
36b6804719 Privacy
All checks were successful
Tests / Tests (pull_request) Successful in 10s
2024-11-12 14:15:19 +01:00
0120c15064 Merge pull request 'Add count to GetShotsWithJustIds operation return' (#127) from loewy/add-count-to-getshots-with-just-ids into master
Reviewed-on: #127
2024-11-11 21:13:19 -07:00
9cc99d956a add countRespectsLimit argument
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-11-11 20:07:58 -08:00
985fa8b8e5 add count to return for get shots with just ids
All checks were successful
Tests / Tests (pull_request) Successful in 14s
2024-11-11 19:54:10 -08:00
c4868e7ebe Add null default 2024-11-11 19:02:13 -08:00
58e1c18034 Merge pull request 'Add filters for getPlayTime' (#126) from mk/add-filter-for-play-time into master
Reviewed-on: #126
2024-11-11 19:52:36 -07:00
592dea0ca2 Add filters for getPlayTime
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-11-11 18:50:00 -08:00
0e00ae9297 Merge pull request 'Add private to VideoGQL' (#125) from mk/not-clear into master
Reviewed-on: #125
2024-11-07 18:50:34 -07:00
e16812f242 ???
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-07 17:49:36 -08:00
3e9b7a0d16 Merge pull request 'Add private field to user and videos' (#124) from mk/privacy into master
Reviewed-on: #124
2024-11-07 18:19:01 -07:00
309deb9473 Add private field to user and videos
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-11-07 17:16:56 -08:00
d5ba9c2ba5 Merge pull request 'Remove id from HomographyInfo fragment for now, use string instead of base64 for FindPrerecordTableLayout' (#122) from loewy/switch-back-to-string into master
Reviewed-on: #122
2024-11-07 18:09:51 -07:00
73771a263a remove id for now, use string instead of base64
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-07 17:08:35 -08:00
655e59c43c Remove base64 scalar 2024-11-07 17:43:09 -07:00
056120a68a Merge pull request 'Add operation for FindPrerecordTableLayoutMutation + HomographyInfoGql fragment' (#121) from loewy/add-operation-check-homography into master
Reviewed-on: #121
2024-11-07 16:51:16 -07:00
bd7ffa7fdb add operation
All checks were successful
Tests / Tests (pull_request) Successful in 10s
2024-11-07 15:45:03 -08:00
ec58923c65 Add id to homography info gql 2024-11-07 16:29:33 -07:00
63869cd7ca Rename checkHomographyIsValid to findPrerecordTableLayout 2024-11-07 15:55:23 -07:00
08ae9611cf Add id to video processing gql 2024-11-07 15:52:07 -07:00
4e610b7df2 Merge pull request 'Return video processing status in feed' (#119) from kat/current-processing into master
Reviewed-on: #119
2024-11-06 22:41:30 -07:00
2d6d3964ad Return video processing status in feed
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-11-06 22:40:18 -07:00
73a58de36e Merge pull request 'Make check homography mutation' (#118) from mk/make-homography-mutation into master
Reviewed-on: #118
2024-11-06 17:26:27 -07:00
dc6f246489 Make check homography mutation
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-06 16:25:23 -08:00
c0a3aa97dc Merge pull request 'Add getShotsWithJustIds' (#117) from loewy/update-get-shots-with-video-ids into master
Reviewed-on: #117
2024-11-06 16:32:59 -07:00
f4e43b24f2 add getShotsWithJustIds
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-11-06 14:58:32 -08:00
51ab8320d7 Merge pull request 'add checkHomographyIsValid' (#116) from mk/get-homography-valid into master
Reviewed-on: #116
2024-11-05 15:45:49 -07:00
f9a00ad3eb add checkHomographyIsValid
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-05 14:39:23 -08:00
998b2ffc8c Merge pull request 'Create video card fragment' (#115) from kat/video-card-feed into master
Reviewed-on: #115
2024-11-05 14:04:02 -07:00
c7642e6204 Create video card fragment
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-05 13:58:31 -07:00
b2ce1c2f96 Create video card fragment
All checks were successful
Tests / Tests (pull_request) Successful in 6s
2024-11-05 13:56:51 -07:00
d0cf071934 Merge pull request 'Return profile image in feed' (#114) from kat/image-uri-feed into master
Reviewed-on: #114
2024-11-05 12:54:24 -07:00
6b410b3d78 Return profile image in feed
All checks were successful
Tests / Tests (pull_request) Successful in 10s
2024-11-05 12:53:42 -07:00
607504261c Merge pull request 'Create new get feed operation' (#113) from kat/add-feed into master
Reviewed-on: #113
Reviewed-by: loewy <loewymalkov@gmail.com>
2024-11-04 15:13:56 -07:00
0421be855d Create new get feed operation
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-11-04 15:08:21 -07:00
014aab473b Merge pull request 'Add operation for query doesUsernameExist' (#111) from loewy/query-does-username-exist into master
Reviewed-on: #111
2024-10-31 18:39:58 -06:00
353872401e does username exist query
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-10-31 17:37:08 -07:00
433dfdaf74 Merge pull request 'Add countRespectsLimit to GetShotsWithMetadataFilterResult operation args' (#110) from loewy/add-count-respects-limit-to-get-shots-with-metadata-filter-result into master
Reviewed-on: #110
2024-10-31 16:41:06 -06:00
a2d9e688e9 add countRespectsLimit
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-10-31 15:21:54 -07:00
b3259dac1f Merge pull request 'Add countRespectsLimit' (#109) from mk/count-respects-limit into master
Reviewed-on: #109
2024-10-31 14:40:06 -06:00
0982b9e60c Add countRespectsLimit
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-10-31 13:37:15 -07:00
1710ae451c Merge pull request 'Return id for cache;' (#107) from kat/use-logged-in-user into master
Reviewed-on: #107
2024-10-31 01:57:38 -06:00
de9e7dea6a Return id for cache;
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-10-31 01:56:34 -06:00
cfcf1dbcd2 Merge pull request 'Use logged in user for followers' (#106) from kat/use-logged-in-user into master
Reviewed-on: #106
2024-10-30 21:52:42 -06:00
05e3182e8b Use logged in user for followers
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-10-30 18:20:25 -06:00
baf139aab5 Merge pull request 'Add support for medals' (#105) from mk/medals into master
Reviewed-on: #105
2024-10-30 17:53:33 -06:00
b3b454ef83 Add support for medals
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-10-30 16:51:35 -07:00
f6e4a1bc0b Merge pull request 'Use getUser for getting followers' (#104) from kat/get-user-followers into master
Reviewed-on: #104
2024-10-30 16:19:53 -06:00
9d8155527d Use getUser for getting followers
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-10-30 16:18:25 -06:00
8690e81029 Merge pull request 'Add doesUsernameExist' (#103) from mk/does-username-exist into master
Reviewed-on: #103
2024-10-30 13:08:59 -06:00
4ef13a482a Add doesUsernameExist
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-10-30 12:07:54 -07:00
9db95c4e6c Merge pull request 'Get user following followers' (#101) from kat/get-user-following-followers into master
Reviewed-on: #101
2024-10-29 23:38:48 -06:00
6 changed files with 1057 additions and 221 deletions

File diff suppressed because it is too large Load Diff

View File

@ -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

View File

@ -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 {

View File

@ -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
}
}

View File

@ -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
}
}
}

View File

@ -9,26 +9,31 @@ type Query {
videoId: ID!
intervalDuration: Int! = 300
): [MakePercentageIntervalGQL!]!
getMedals(scope: MedalScope!, userId: Int = null): RequestedMedalsGQL!
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 +46,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 +59,7 @@ type Query {
getFeedVideos(
limit: Int! = 5
after: String = null
includeCallersVideos: Boolean = true
filters: VideoFilterInput = null
): VideoHistoryGQL!
}
@ -266,6 +272,52 @@ type MakePercentageIntervalGQL {
elapsedTime: Float!
}
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
totalMakes50: MedalGQL
totalMakes75: MedalGQL
totalMakes100: MedalGQL
totalMakes200: MedalGQL
totalMakes300: MedalGQL
totalMakes400: MedalGQL
totalMakes500: MedalGQL
totalMakes750: MedalGQL
totalMakes1000: MedalGQL
dayStreak2: MedalGQL
dayStreak3: MedalGQL
dayStreak4: MedalGQL
dayStreak5: MedalGQL
dayStreak6: MedalGQL
dayStreak7: MedalGQL
dayStreak14: MedalGQL
dayStreak21: MedalGQL
dayStreak30: MedalGQL
dayStreak60: MedalGQL
dayStreak90: MedalGQL
}
type MedalGQL {
count: Int!
}
input MedalScope @oneOf {
videoId: Int
interval: TimeInterval
}
type GetShotsResult {
shots: [ShotGQL!]!
count: Int
@ -349,6 +401,7 @@ type UserGQL {
profileImageUri: String
createdAt: DateTime
updatedAt: DateTime
videosPrivateByDefault: Boolean
following: [UserGQL!]
followers: [UserGQL!]
}
@ -386,6 +439,7 @@ type VideoGQL {
elapsedTime: Float
framesPerSecond: Float!
tableSize: Float!
private: Boolean!
stream: UploadStreamGQL
playlist: HLSPlaylistGQL
tags: [VideoTag!]!
@ -458,6 +512,7 @@ type VideoTagClass {
}
type HomographyInfoGQL {
id: Int!
frameIndex: Int!
crop: BoundingBoxGQL!
pockets: [BoundingBoxGQL!]!
@ -487,6 +542,7 @@ type IntPoint2D {
}
type VideoProcessingGQL {
id: Int!
errors: [VideoProcessingErrorGQL!]!
status: ProcessingStatusEnum!
statuses: [VideoProcessingStatusGQL!]!
@ -569,6 +625,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 +642,6 @@ type PageInfoGQL {
endCursor: String
}
input VideoFilterInput {
isStreamCompleted: Boolean = null
requireCursorCompletion: Boolean! = true
}
type TagGQL {
name: String!
id: Int!
@ -617,6 +675,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 +764,7 @@ type TooManyProfileImageUploadsErr {
input EditUserInputGQL {
username: String = null
fargoRating: Int = null
videosPrivateByDefault: Boolean = null
}
type CreateUploadStreamReturn {
@ -719,6 +779,7 @@ input VideoMetadataInput {
tableSize: Float = null
lastIntendedSegmentBound: Int = null
streamSegmentType: StreamSegmentTypeEnum = null
private: Boolean = null
endStream: Boolean! = false
resolution: VideoResolution = null
framesPerSecond: Float = null