Compare commits
36 Commits
f140807886
...
micah/add-
Author | SHA1 | Date | |
---|---|---|---|
0999c88797 | |||
d3559ede21 | |||
ef6ccca3f9 | |||
f781e9648f | |||
18d2eea029 | |||
a95bdab8bf | |||
eaeb1ed0ea | |||
f9d6377fe4 | |||
30cf72de78 | |||
fd49dec34c | |||
cdd1cdd526 | |||
bce363e8ff | |||
80f609b8a2 | |||
6205e9a353 | |||
12f7e1f115 | |||
296ad969f4 | |||
d25c08447e | |||
7502a75753 | |||
1a14db1a17 | |||
67d8bcac21 | |||
4ca27317b4 | |||
dc214e878f | |||
d669dba320 | |||
235f4a58e9 | |||
03c1d08d8c | |||
cc36a8b51d | |||
d743ad83e3 | |||
194c258dcd | |||
e0e1ae1108 | |||
ee73443374 | |||
88801f9186 | |||
524d469a0d | |||
c7b225ff00 | |||
ba84f6d9c0 | |||
6a72f9f43f | |||
efc0b2d858 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -3,3 +3,4 @@ dist
|
||||
.direnv
|
||||
/after.txt
|
||||
/before.txt
|
||||
**/__pycache__/**
|
||||
|
862
src/index.tsx
862
src/index.tsx
File diff suppressed because it is too large
Load Diff
@@ -36,3 +36,10 @@ query GetShots(
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query GetShotAnnotationTypes {
|
||||
getShotAnnotationTypes {
|
||||
id
|
||||
name
|
||||
}
|
||||
}
|
||||
|
@@ -24,6 +24,7 @@ query getLoggedInUser {
|
||||
id
|
||||
firebaseUid
|
||||
username
|
||||
isAdmin
|
||||
profileImageUri
|
||||
activeVideoId
|
||||
createdAt
|
||||
@@ -36,3 +37,11 @@ query GetUserPlayTime($userId: Int!) {
|
||||
totalSeconds
|
||||
}
|
||||
}
|
||||
|
||||
query getUsernames(
|
||||
$matchString: String!
|
||||
$limit: Int = null
|
||||
$after: String = null
|
||||
) {
|
||||
getUsernames(matchString: $matchString, limit: $limit, after: $after)
|
||||
}
|
||||
|
@@ -51,6 +51,7 @@ query GetStreamMonitoringDetails($videoId: Int!) {
|
||||
isCompleted
|
||||
uploadCompletionCursor
|
||||
lastIntendedSegmentBound
|
||||
initPlaylistUploadStatus
|
||||
}
|
||||
currentProcessing {
|
||||
errors {
|
||||
|
@@ -14,6 +14,28 @@ mutation GetUploadLink($videoId: Int!, $segmentIndex: Int!) {
|
||||
}
|
||||
}
|
||||
|
||||
mutation GetHlsInitUploadLink($videoId: Int!) {
|
||||
getHlsInitUploadLink(videoId: $videoId) {
|
||||
uploadUrl
|
||||
headers {
|
||||
key
|
||||
value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
mutation SetSegmentDuration(
|
||||
$videoId: Int!
|
||||
$segmentIndex: Int!
|
||||
$duration: Float!
|
||||
) {
|
||||
setSegmentDuration(
|
||||
videoId: $videoId
|
||||
segmentIndex: $segmentIndex
|
||||
duration: $duration
|
||||
)
|
||||
}
|
||||
|
||||
mutation EditUploadStream(
|
||||
$videoId: Int!
|
||||
$videoMetadataInput: VideoMetadataInput!
|
||||
|
@@ -9,8 +9,14 @@ type Query {
|
||||
intervalDuration: Int! = 300
|
||||
): [MakePercentageIntervalGQL!]!
|
||||
getShots(filterInput: FilterInput!): [ShotGQL!]!
|
||||
getShotAnnotationTypes: [ShotAnnotationTypeGQL!]!
|
||||
getUser(userId: Int!): UserGQL
|
||||
getLoggedInUser: UserGQL
|
||||
getUsernames(
|
||||
matchString: String = null
|
||||
limit: Int = null
|
||||
after: String = null
|
||||
): [String!]!
|
||||
getPlayTime(userId: Int!): UserPlayTimeGQL!
|
||||
getUserVideos(
|
||||
userId: Int = null
|
||||
@@ -65,6 +71,7 @@ input EnumAggregation {
|
||||
input FilterInput @oneOf {
|
||||
andFilters: [FilterInput!]
|
||||
orFilters: [FilterInput!]
|
||||
notFilter: FilterInput
|
||||
cueObjectDistance: RangeFilter
|
||||
targetPocketDistance: RangeFilter
|
||||
cueObjectAngle: RangeFilter
|
||||
@@ -76,6 +83,17 @@ input FilterInput @oneOf {
|
||||
userId: [Int!]
|
||||
make: [Boolean!]
|
||||
tags: [VideoTagInput!]
|
||||
annotations: [ShotAnnotationInput!]
|
||||
isStraight: [Boolean!]
|
||||
isRight: [Boolean!]
|
||||
isLeft: [Boolean!]
|
||||
isLeftMiss: [Boolean!]
|
||||
isRightMiss: [Boolean!]
|
||||
isDirect: [Boolean!]
|
||||
bankAngle: RangeFilter
|
||||
bankDistance: RangeFilter
|
||||
kickAngle: RangeFilter
|
||||
kickDistance: RangeFilter
|
||||
}
|
||||
|
||||
input RangeFilter {
|
||||
@@ -103,6 +121,10 @@ input VideoTagClassInput {
|
||||
name: String!
|
||||
}
|
||||
|
||||
input ShotAnnotationInput {
|
||||
name: String!
|
||||
}
|
||||
|
||||
type BucketSetGQL {
|
||||
keyName: String!
|
||||
feature: String!
|
||||
@@ -138,6 +160,7 @@ type ShotGQL {
|
||||
bankFeatures: BankFeaturesGQL
|
||||
serializedShotPaths: SerializedShotPathsGQL
|
||||
user: UserGQL
|
||||
annotations: [ShotAnnotationGQL!]!
|
||||
}
|
||||
|
||||
"""
|
||||
@@ -178,12 +201,27 @@ type UserGQL {
|
||||
id: Int!
|
||||
firebaseUid: String!
|
||||
username: String!
|
||||
isAdmin: Boolean!
|
||||
activeVideoId: Int
|
||||
profileImageUri: String
|
||||
createdAt: DateTime
|
||||
updatedAt: DateTime
|
||||
}
|
||||
|
||||
type ShotAnnotationGQL {
|
||||
shotId: Int!
|
||||
type: ShotAnnotationTypeGQL!
|
||||
creator: UserGQL!
|
||||
notes: String!
|
||||
createdAt: DateTime
|
||||
updatedAt: DateTime
|
||||
}
|
||||
|
||||
type ShotAnnotationTypeGQL {
|
||||
id: Int!
|
||||
name: String!
|
||||
}
|
||||
|
||||
type UserPlayTimeGQL {
|
||||
totalSeconds: Float!
|
||||
}
|
||||
@@ -224,6 +262,7 @@ type UploadStreamGQL {
|
||||
segmentProcessingCursor: Int!
|
||||
lastIntendedSegmentBound: Int
|
||||
isCompleted: Boolean!
|
||||
initPlaylistUploadStatus: InitPlaylistUploadStatusEnum
|
||||
lowestUnuploadedSegmentIndex: Int!
|
||||
uploadCompletionCursor: Int!
|
||||
errors: [StreamErrorGQL!]!
|
||||
@@ -232,6 +271,12 @@ type UploadStreamGQL {
|
||||
segments: [UploadSegmentGQL!]!
|
||||
}
|
||||
|
||||
enum InitPlaylistUploadStatusEnum {
|
||||
NOT_APPLICABLE
|
||||
NOT_UPLOADED
|
||||
UPLOADED
|
||||
}
|
||||
|
||||
type StreamErrorGQL {
|
||||
message: String!
|
||||
}
|
||||
@@ -242,7 +287,7 @@ type UploadSegmentGQL {
|
||||
valid: Boolean!
|
||||
endFrameIndex: Int
|
||||
framesPerSecond: Float
|
||||
durationsInSeconds: Float
|
||||
durationInSeconds: Float
|
||||
linksRequested: Int!
|
||||
}
|
||||
|
||||
@@ -319,6 +364,12 @@ type Mutation {
|
||||
videoMetadata: VideoMetadataInput!
|
||||
): CreateUploadStreamReturn!
|
||||
getUploadLink(videoId: Int!, segmentIndex: Int!): GetUploadLinkReturn!
|
||||
getHlsInitUploadLink(videoId: Int!): GetUploadLinkReturn!
|
||||
setSegmentDuration(
|
||||
videoId: Int!
|
||||
segmentIndex: Int!
|
||||
duration: Float!
|
||||
): Boolean!
|
||||
editUploadStream(videoId: Int!, videoMetadata: VideoMetadataInput!): Boolean!
|
||||
deleteVideo(videoId: Int!): Boolean!
|
||||
}
|
||||
@@ -344,6 +395,7 @@ type CreateUploadStreamReturn {
|
||||
}
|
||||
|
||||
input VideoMetadataInput {
|
||||
resolution: VideoResolution!
|
||||
videoName: String = null
|
||||
startTime: DateTime = null
|
||||
endTime: DateTime = null
|
||||
@@ -351,7 +403,14 @@ input VideoMetadataInput {
|
||||
tableSize: String = null
|
||||
uploadStreamMetadataInput: UploadStreamMetadataInput = null
|
||||
lastIntendedSegmentBound: Int = null
|
||||
streamSegmentType: StreamSegmentTypeEnum = null
|
||||
endStream: Boolean! = false
|
||||
framesPerSecond: Float = null
|
||||
}
|
||||
|
||||
input VideoResolution {
|
||||
width: Int!
|
||||
height: Int!
|
||||
}
|
||||
|
||||
input UploadStreamMetadataInput {
|
||||
@@ -371,3 +430,8 @@ enum DeviceTypeEnum {
|
||||
ANDROID
|
||||
BROWSER
|
||||
}
|
||||
|
||||
enum StreamSegmentTypeEnum {
|
||||
FRAGMENTED_MP4
|
||||
RB_CHUNKED_MP4
|
||||
}
|
||||
|
Reference in New Issue
Block a user