Compare commits
	
		
			44 Commits
		
	
	
		
			kat/create
			...
			db4a6315cd
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| db4a6315cd | |||
| af38fdea64 | |||
| a030a0ef16 | |||
| 7a6cc2739f | |||
| 41c9701e18 | |||
| 16e79ed608 | |||
| f401e1879b | |||
| 72b451d322 | |||
| 5350c46e0a | |||
| 1f5c5774e1 | |||
| 3b29502e7e | |||
| abc7e9fd05 | |||
| dd5ce77102 | |||
| dabaa3d1e1 | |||
| a6604a3a6d | |||
| 09a3e0e294 | |||
| f20ca53a2a | |||
| a2b912500c | |||
| 7de3d196ba | |||
| 6d5669aaf8 | |||
| 2c583509a2 | |||
| 3480637600 | |||
| f4665f51b1 | |||
| 810212dc12 | |||
| c3210df517 | |||
| 9f5c354433 | |||
| 23d9fef2b1 | |||
| df3087de7d | |||
| 5dd8318dab | |||
| 56c8bcce20 | |||
| 1c4961db5b | |||
| 5e0d01ea5b | |||
| e8938621fc | |||
| 8c8dcdd8e1 | |||
| 5085c9af90 | |||
| 85bc743c8e | |||
| b8efa644e3 | |||
| c18628a4ca | |||
| 535e24c9c2 | |||
| 04308b1003 | |||
| 43c626141e | |||
| c49266e4c1 | |||
| 6677b9232f | |||
| 76e792be88 | 
							
								
								
									
										439
									
								
								src/index.tsx
									
									
									
									
									
								
							
							
						
						
									
										439
									
								
								src/index.tsx
									
									
									
									
									
								
							@@ -30,6 +30,18 @@ export type Scalars = {
 | 
			
		||||
  Float: { input: number; output: number };
 | 
			
		||||
  /** Date with time (isoformat) */
 | 
			
		||||
  DateTime: { input: any; output: any };
 | 
			
		||||
  /** The `JSON` scalar type represents JSON values as specified by [ECMA-404](https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf). */
 | 
			
		||||
  JSON: { input: any; output: any };
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type AddShotAnnotationErrors = {
 | 
			
		||||
  __typename?: "AddShotAnnotationErrors";
 | 
			
		||||
  error: DoesNotOwnShotErrOtherErrorNeedsNote;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type AddShotAnnotationReturn = {
 | 
			
		||||
  __typename?: "AddShotAnnotationReturn";
 | 
			
		||||
  value: SuccessfulAddAddShotAnnotationErrors;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type AggregateInputGql = {
 | 
			
		||||
@@ -102,6 +114,10 @@ export type CreateUploadStreamReturn = {
 | 
			
		||||
  videoId: Scalars["Int"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type CreatedAfter =
 | 
			
		||||
  | { createdAt: Scalars["DateTime"]["input"]; videoId?: never }
 | 
			
		||||
  | { createdAt?: never; videoId: Scalars["Int"]["input"] };
 | 
			
		||||
 | 
			
		||||
export type CueObjectFeaturesGql = {
 | 
			
		||||
  __typename?: "CueObjectFeaturesGQL";
 | 
			
		||||
  cueBallSpeed?: Maybe<Scalars["Float"]["output"]>;
 | 
			
		||||
@@ -116,6 +132,7 @@ export type DeployedConfigGql = {
 | 
			
		||||
  devMode: Scalars["Boolean"]["output"];
 | 
			
		||||
  environment: Scalars["String"]["output"];
 | 
			
		||||
  firebase: Scalars["Boolean"]["output"];
 | 
			
		||||
  minimumAllowedAppVersion: Scalars["String"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export enum DeviceTypeEnum {
 | 
			
		||||
@@ -124,6 +141,16 @@ export enum DeviceTypeEnum {
 | 
			
		||||
  Ios = "IOS",
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export type DoesNotOwnShotErr = {
 | 
			
		||||
  __typename?: "DoesNotOwnShotErr";
 | 
			
		||||
  msg?: Maybe<Scalars["String"]["output"]>;
 | 
			
		||||
  shotId: Scalars["Int"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type DoesNotOwnShotErrOtherErrorNeedsNote =
 | 
			
		||||
  | DoesNotOwnShotErr
 | 
			
		||||
  | OtherErrorNeedsNote;
 | 
			
		||||
 | 
			
		||||
export type EnumAggregation = {
 | 
			
		||||
  feature: Scalars["String"]["input"];
 | 
			
		||||
};
 | 
			
		||||
@@ -155,6 +182,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -186,6 +214,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -217,6 +246,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -248,6 +278,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -279,6 +310,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -310,6 +342,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -341,6 +374,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -372,6 +406,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -403,6 +438,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -434,6 +470,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -465,6 +502,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -496,6 +534,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -527,6 +566,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -558,6 +598,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -589,6 +630,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -620,6 +662,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -651,6 +694,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -682,6 +726,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -713,6 +758,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -744,6 +790,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -775,6 +822,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -806,6 +854,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -837,6 +886,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters: Array<FilterInput>;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -868,6 +918,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection: Array<ShotDirectionEnum>;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -899,6 +950,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType: Array<Scalars["String"]["input"]>;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -930,6 +982,39 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize: RangeFilter;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
      videoId?: never;
 | 
			
		||||
    }
 | 
			
		||||
  | {
 | 
			
		||||
      andFilters?: never;
 | 
			
		||||
      annotations?: never;
 | 
			
		||||
      bankAngle?: never;
 | 
			
		||||
      bankDistance?: never;
 | 
			
		||||
      cueAngleAfterObject?: never;
 | 
			
		||||
      cueBallSpeed?: never;
 | 
			
		||||
      cueObjectAngle?: never;
 | 
			
		||||
      cueObjectDistance?: never;
 | 
			
		||||
      cueSpeedAfterObject?: never;
 | 
			
		||||
      difficulty?: never;
 | 
			
		||||
      falsePositiveScore?: never;
 | 
			
		||||
      intendedPocketType?: never;
 | 
			
		||||
      isDirect?: never;
 | 
			
		||||
      isLeft?: never;
 | 
			
		||||
      isLeftMiss?: never;
 | 
			
		||||
      isRight?: never;
 | 
			
		||||
      isRightMiss?: never;
 | 
			
		||||
      isStraight?: never;
 | 
			
		||||
      kickAngle?: never;
 | 
			
		||||
      kickDistance?: never;
 | 
			
		||||
      make?: never;
 | 
			
		||||
      notFilter?: never;
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags: Array<VideoTagInput>;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -961,6 +1046,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance: RangeFilter;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
@@ -992,6 +1078,7 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId: Array<Scalars["Int"]["input"]>;
 | 
			
		||||
@@ -1023,16 +1110,37 @@ export type FilterInput =
 | 
			
		||||
      orFilters?: never;
 | 
			
		||||
      shotDirection?: never;
 | 
			
		||||
      spinType?: never;
 | 
			
		||||
      tableSize?: never;
 | 
			
		||||
      tags?: never;
 | 
			
		||||
      targetPocketDistance?: never;
 | 
			
		||||
      userId?: never;
 | 
			
		||||
      videoId: Array<Scalars["Int"]["input"]>;
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
export type GetProfileUploadLinkErrors = {
 | 
			
		||||
  __typename?: "GetProfileUploadLinkErrors";
 | 
			
		||||
  error: TooManyProfileImageUploadsErr;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type GetProfileUploadLinkReturn = {
 | 
			
		||||
  __typename?: "GetProfileUploadLinkReturn";
 | 
			
		||||
  value: UploadLinkGetProfileUploadLinkErrors;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type GetShotsPagination = {
 | 
			
		||||
  createdAfter: CreatedAfter;
 | 
			
		||||
  startFrameAfter: Scalars["Int"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type GetUploadLinkErrors = {
 | 
			
		||||
  __typename?: "GetUploadLinkErrors";
 | 
			
		||||
  error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErr;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type GetUploadLinkReturn = {
 | 
			
		||||
  __typename?: "GetUploadLinkReturn";
 | 
			
		||||
  headers: Array<Maybe<Header>>;
 | 
			
		||||
  uploadUrl: Scalars["String"]["output"];
 | 
			
		||||
  stream?: Maybe<UploadStreamGql>;
 | 
			
		||||
  value: UploadLinkGetUploadLinkErrors;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type HlsPlaylistGql = {
 | 
			
		||||
@@ -1075,20 +1183,41 @@ export type MakePercentageIntervalGql = {
 | 
			
		||||
  makePercentage: Scalars["Float"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type MustHaveSetForUploadLinkErr = {
 | 
			
		||||
  __typename?: "MustHaveSetForUploadLinkErr";
 | 
			
		||||
  framesPerSecond?: Maybe<Scalars["Boolean"]["output"]>;
 | 
			
		||||
  resolution?: Maybe<Scalars["Boolean"]["output"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErr =
 | 
			
		||||
 | 
			
		||||
    | MustHaveSetForUploadLinkErr
 | 
			
		||||
    | NoInitForChunkedUploadErr
 | 
			
		||||
    | ProcessingFailedErr
 | 
			
		||||
    | SegmentAlreadyUploadedErr
 | 
			
		||||
    | TooManyProfileImageUploadsErr;
 | 
			
		||||
 | 
			
		||||
export type Mutation = {
 | 
			
		||||
  __typename?: "Mutation";
 | 
			
		||||
  addAnnotationToShot: AddShotAnnotationReturn;
 | 
			
		||||
  createBucketSet: BucketSetGql;
 | 
			
		||||
  createUploadStream: CreateUploadStreamReturn;
 | 
			
		||||
  deleteVideo: Scalars["Boolean"]["output"];
 | 
			
		||||
  editProfileImageUri: UserGql;
 | 
			
		||||
  editUploadStream: Scalars["Boolean"]["output"];
 | 
			
		||||
  getHlsInitUploadLink: GetUploadLinkReturn;
 | 
			
		||||
  getProfileImageUploadLink: GetUploadLinkReturn;
 | 
			
		||||
  getProfileImageUploadLink: GetProfileUploadLinkReturn;
 | 
			
		||||
  getUploadLink: GetUploadLinkReturn;
 | 
			
		||||
  setLoggerLevel: Scalars["Boolean"]["output"];
 | 
			
		||||
  setSegmentDuration: Scalars["Boolean"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type MutationAddAnnotationToShotArgs = {
 | 
			
		||||
  annotationName: Scalars["String"]["input"];
 | 
			
		||||
  notes?: InputMaybe<Scalars["String"]["input"]>;
 | 
			
		||||
  shotId: Scalars["Int"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type MutationCreateBucketSetArgs = {
 | 
			
		||||
  params: CreateBucketSetInput;
 | 
			
		||||
};
 | 
			
		||||
@@ -1134,6 +1263,16 @@ export type MutationSetSegmentDurationArgs = {
 | 
			
		||||
  videoId: Scalars["Int"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type NoInitForChunkedUploadErr = {
 | 
			
		||||
  __typename?: "NoInitForChunkedUploadErr";
 | 
			
		||||
  segmentType: StreamSegmentTypeEnum;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type OtherErrorNeedsNote = {
 | 
			
		||||
  __typename?: "OtherErrorNeedsNote";
 | 
			
		||||
  msg?: Maybe<Scalars["String"]["output"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type PageInfoGql = {
 | 
			
		||||
  __typename?: "PageInfoGQL";
 | 
			
		||||
  endCursor?: Maybe<Scalars["String"]["output"]>;
 | 
			
		||||
@@ -1163,6 +1302,22 @@ export type PocketingIntentionFeaturesGql = {
 | 
			
		||||
  targetPocketDistance?: Maybe<Scalars["Float"]["output"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type ProcessingFailedErr = {
 | 
			
		||||
  __typename?: "ProcessingFailedErr";
 | 
			
		||||
  processing: VideoProcessingGql;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export enum ProcessingStatusEnum {
 | 
			
		||||
  Created = "CREATED",
 | 
			
		||||
  Failed = "FAILED",
 | 
			
		||||
  Queued = "QUEUED",
 | 
			
		||||
  ReextractingFeatures = "REEXTRACTING_FEATURES",
 | 
			
		||||
  Running = "RUNNING",
 | 
			
		||||
  Started = "STARTED",
 | 
			
		||||
  Succeeded = "SUCCEEDED",
 | 
			
		||||
  Suspended = "SUSPENDED",
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export type Query = {
 | 
			
		||||
  __typename?: "Query";
 | 
			
		||||
  getAggregatedShotMetrics: Array<AggregateResultGql>;
 | 
			
		||||
@@ -1179,6 +1334,7 @@ export type Query = {
 | 
			
		||||
  getVideo: VideoGql;
 | 
			
		||||
  getVideoMakePercentageIntervals: Array<MakePercentageIntervalGql>;
 | 
			
		||||
  getVideos: Array<VideoGql>;
 | 
			
		||||
  waitFor: Scalars["Float"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type QueryGetAggregatedShotMetricsArgs = {
 | 
			
		||||
@@ -1193,8 +1349,14 @@ export type QueryGetPlayTimeArgs = {
 | 
			
		||||
  userId: Scalars["Int"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type QueryGetShotAnnotationTypesArgs = {
 | 
			
		||||
  errorTypes?: InputMaybe<Scalars["Boolean"]["input"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type QueryGetShotsArgs = {
 | 
			
		||||
  filterInput: FilterInput;
 | 
			
		||||
  limit?: Scalars["Int"]["input"];
 | 
			
		||||
  shotsPagination?: InputMaybe<GetShotsPagination>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type QueryGetUserArgs = {
 | 
			
		||||
@@ -1215,6 +1377,7 @@ export type QueryGetUsernamesArgs = {
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type QueryGetVideoArgs = {
 | 
			
		||||
  debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>;
 | 
			
		||||
  videoId: Scalars["Int"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -1227,10 +1390,22 @@ export type QueryGetVideosArgs = {
 | 
			
		||||
  videoIds: Array<Scalars["Int"]["input"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type QueryWaitForArgs = {
 | 
			
		||||
  duration: Scalars["Float"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type RangeFilter = {
 | 
			
		||||
  greaterThan?: InputMaybe<Scalars["Float"]["input"]>;
 | 
			
		||||
  greaterThanEqualTo?: InputMaybe<Scalars["Float"]["input"]>;
 | 
			
		||||
  greaterThanInclusive?: Scalars["Boolean"]["input"];
 | 
			
		||||
  includeOnNone?: Scalars["Boolean"]["input"];
 | 
			
		||||
  lessThan?: InputMaybe<Scalars["Float"]["input"]>;
 | 
			
		||||
  lessThanInclusive?: Scalars["Boolean"]["input"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type SegmentAlreadyUploadedErr = {
 | 
			
		||||
  __typename?: "SegmentAlreadyUploadedErr";
 | 
			
		||||
  segmentId: Scalars["Int"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type SerializedShotPathsGql = {
 | 
			
		||||
@@ -1242,6 +1417,7 @@ export type ShotAnnotationGql = {
 | 
			
		||||
  __typename?: "ShotAnnotationGQL";
 | 
			
		||||
  createdAt?: Maybe<Scalars["DateTime"]["output"]>;
 | 
			
		||||
  creator: UserGql;
 | 
			
		||||
  errorDefault: Scalars["Boolean"]["output"];
 | 
			
		||||
  notes: Scalars["String"]["output"];
 | 
			
		||||
  shotId: Scalars["Int"]["output"];
 | 
			
		||||
  type: ShotAnnotationTypeGql;
 | 
			
		||||
@@ -1278,6 +1454,7 @@ export type ShotGql = {
 | 
			
		||||
  startFrame: Scalars["Int"]["output"];
 | 
			
		||||
  updatedAt?: Maybe<Scalars["DateTime"]["output"]>;
 | 
			
		||||
  user?: Maybe<UserGql>;
 | 
			
		||||
  video?: Maybe<VideoGql>;
 | 
			
		||||
  videoId: Scalars["Int"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -1291,6 +1468,15 @@ export enum StreamSegmentTypeEnum {
 | 
			
		||||
  RbChunkedMp4 = "RB_CHUNKED_MP4",
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export type SuccessfulAdd = {
 | 
			
		||||
  __typename?: "SuccessfulAdd";
 | 
			
		||||
  value: Scalars["Boolean"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type SuccessfulAddAddShotAnnotationErrors =
 | 
			
		||||
  | AddShotAnnotationErrors
 | 
			
		||||
  | SuccessfulAdd;
 | 
			
		||||
 | 
			
		||||
export type TagGql = {
 | 
			
		||||
  __typename?: "TagGQL";
 | 
			
		||||
  group?: Maybe<Scalars["String"]["output"]>;
 | 
			
		||||
@@ -1305,6 +1491,23 @@ export type TargetMetricsGql = {
 | 
			
		||||
  makePercentage?: Maybe<Scalars["Float"]["output"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type TooManyProfileImageUploadsErr = {
 | 
			
		||||
  __typename?: "TooManyProfileImageUploadsErr";
 | 
			
		||||
  linksRequested: Scalars["Int"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type UploadLink = {
 | 
			
		||||
  __typename?: "UploadLink";
 | 
			
		||||
  headers: Array<Maybe<Header>>;
 | 
			
		||||
  uploadUrl: Scalars["String"]["output"];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type UploadLinkGetProfileUploadLinkErrors =
 | 
			
		||||
  | GetProfileUploadLinkErrors
 | 
			
		||||
  | UploadLink;
 | 
			
		||||
 | 
			
		||||
export type UploadLinkGetUploadLinkErrors = GetUploadLinkErrors | UploadLink;
 | 
			
		||||
 | 
			
		||||
export type UploadSegmentGql = {
 | 
			
		||||
  __typename?: "UploadSegmentGQL";
 | 
			
		||||
  durationInSeconds?: Maybe<Scalars["Float"]["output"]>;
 | 
			
		||||
@@ -1388,6 +1591,7 @@ export type VideoGql = {
 | 
			
		||||
  shots: Array<ShotGql>;
 | 
			
		||||
  startTime?: Maybe<Scalars["DateTime"]["output"]>;
 | 
			
		||||
  stream?: Maybe<UploadStreamGql>;
 | 
			
		||||
  tableSize: Scalars["Float"]["output"];
 | 
			
		||||
  tags: Array<VideoTag>;
 | 
			
		||||
  totalShots: Scalars["Int"]["output"];
 | 
			
		||||
  totalShotsMade: Scalars["Int"]["output"];
 | 
			
		||||
@@ -1409,7 +1613,7 @@ export type VideoMetadataInput = {
 | 
			
		||||
  resolution?: InputMaybe<VideoResolution>;
 | 
			
		||||
  startTime?: InputMaybe<Scalars["DateTime"]["input"]>;
 | 
			
		||||
  streamSegmentType?: InputMaybe<StreamSegmentTypeEnum>;
 | 
			
		||||
  tableSize?: InputMaybe<Scalars["String"]["input"]>;
 | 
			
		||||
  tableSize?: InputMaybe<Scalars["Float"]["input"]>;
 | 
			
		||||
  uploadStreamMetadataInput?: InputMaybe<UploadStreamMetadataInput>;
 | 
			
		||||
  videoName?: InputMaybe<Scalars["String"]["input"]>;
 | 
			
		||||
};
 | 
			
		||||
@@ -1424,6 +1628,17 @@ export type VideoProcessingErrorGql = {
 | 
			
		||||
export type VideoProcessingGql = {
 | 
			
		||||
  __typename?: "VideoProcessingGQL";
 | 
			
		||||
  errors: Array<VideoProcessingErrorGql>;
 | 
			
		||||
  status: ProcessingStatusEnum;
 | 
			
		||||
  statuses: Array<VideoProcessingStatusGql>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type VideoProcessingStatusGql = {
 | 
			
		||||
  __typename?: "VideoProcessingStatusGQL";
 | 
			
		||||
  appVersion: Scalars["String"]["output"];
 | 
			
		||||
  createdAt?: Maybe<Scalars["DateTime"]["output"]>;
 | 
			
		||||
  sequenceId: Scalars["Int"]["output"];
 | 
			
		||||
  status: ProcessingStatusEnum;
 | 
			
		||||
  updatedAt?: Maybe<Scalars["DateTime"]["output"]>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type VideoResolution = {
 | 
			
		||||
@@ -1493,6 +1708,7 @@ export type GetDeployedConfigQuery = {
 | 
			
		||||
    devMode: boolean;
 | 
			
		||||
    environment: string;
 | 
			
		||||
    firebase: boolean;
 | 
			
		||||
    minimumAllowedAppVersion: string;
 | 
			
		||||
  };
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -1519,6 +1735,7 @@ export type GetFeedQuery = {
 | 
			
		||||
      startTime?: any | null;
 | 
			
		||||
      endTime?: any | null;
 | 
			
		||||
      elapsedTime?: number | null;
 | 
			
		||||
      tableSize: number;
 | 
			
		||||
      owner?: { __typename?: "UserGQL"; username: string } | null;
 | 
			
		||||
      stream?: { __typename?: "UploadStreamGQL"; isCompleted: boolean } | null;
 | 
			
		||||
      tags: Array<{
 | 
			
		||||
@@ -1551,6 +1768,8 @@ export type GetVideoMakePercentageIntervalsQuery = {
 | 
			
		||||
 | 
			
		||||
export type GetShotsQueryVariables = Exact<{
 | 
			
		||||
  filterInput: FilterInput;
 | 
			
		||||
  shotsPagination?: InputMaybe<GetShotsPagination>;
 | 
			
		||||
  limit?: InputMaybe<Scalars["Int"]["input"]>;
 | 
			
		||||
  includeCreatedAt?: Scalars["Boolean"]["input"];
 | 
			
		||||
  includeUpdatedAt?: Scalars["Boolean"]["input"];
 | 
			
		||||
  includeCueObjectFeatures?: Scalars["Boolean"]["input"];
 | 
			
		||||
@@ -1612,13 +1831,24 @@ export type GetProfileImageUploadLinkMutationVariables = Exact<{
 | 
			
		||||
export type GetProfileImageUploadLinkMutation = {
 | 
			
		||||
  __typename?: "Mutation";
 | 
			
		||||
  getProfileImageUploadLink: {
 | 
			
		||||
    __typename?: "GetUploadLinkReturn";
 | 
			
		||||
    uploadUrl: string;
 | 
			
		||||
    headers: Array<{
 | 
			
		||||
      __typename?: "Header";
 | 
			
		||||
      key: string;
 | 
			
		||||
      value: string;
 | 
			
		||||
    } | null>;
 | 
			
		||||
    __typename?: "GetProfileUploadLinkReturn";
 | 
			
		||||
    value:
 | 
			
		||||
      | {
 | 
			
		||||
          __typename?: "GetProfileUploadLinkErrors";
 | 
			
		||||
          error: {
 | 
			
		||||
            __typename?: "TooManyProfileImageUploadsErr";
 | 
			
		||||
            linksRequested: number;
 | 
			
		||||
          };
 | 
			
		||||
        }
 | 
			
		||||
      | {
 | 
			
		||||
          __typename?: "UploadLink";
 | 
			
		||||
          uploadUrl: string;
 | 
			
		||||
          headers: Array<{
 | 
			
		||||
            __typename?: "Header";
 | 
			
		||||
            key: string;
 | 
			
		||||
            value: string;
 | 
			
		||||
          } | null>;
 | 
			
		||||
        };
 | 
			
		||||
  };
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -1678,6 +1908,7 @@ export type GetUsernamesQuery = {
 | 
			
		||||
 | 
			
		||||
export type GetStreamMonitoringDetailsQueryVariables = Exact<{
 | 
			
		||||
  videoId: Scalars["Int"]["input"];
 | 
			
		||||
  debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>;
 | 
			
		||||
}>;
 | 
			
		||||
 | 
			
		||||
export type GetStreamMonitoringDetailsQuery = {
 | 
			
		||||
@@ -1749,6 +1980,7 @@ export type GetVideoUpdatePageDetailsQuery = {
 | 
			
		||||
    totalShots: number;
 | 
			
		||||
    makePercentage: number;
 | 
			
		||||
    elapsedTime?: number | null;
 | 
			
		||||
    tableSize: number;
 | 
			
		||||
    tags: Array<{
 | 
			
		||||
      __typename?: "VideoTag";
 | 
			
		||||
      name: string;
 | 
			
		||||
@@ -1787,6 +2019,7 @@ export type GetVideoDetailsQuery = {
 | 
			
		||||
    totalShotsMade: number;
 | 
			
		||||
    createdAt?: any | null;
 | 
			
		||||
    updatedAt?: any | null;
 | 
			
		||||
    tableSize: number;
 | 
			
		||||
    owner?: {
 | 
			
		||||
      __typename?: "UserGQL";
 | 
			
		||||
      id: number;
 | 
			
		||||
@@ -1811,13 +2044,10 @@ export type GetVideosQuery = {
 | 
			
		||||
  getVideos: Array<{
 | 
			
		||||
    __typename?: "VideoGQL";
 | 
			
		||||
    id: number;
 | 
			
		||||
    playlist?: {
 | 
			
		||||
      __typename?: "HLSPlaylistGQL";
 | 
			
		||||
      segmentDurations: Array<number>;
 | 
			
		||||
    } | null;
 | 
			
		||||
    stream?: {
 | 
			
		||||
      __typename?: "UploadStreamGQL";
 | 
			
		||||
      id: string;
 | 
			
		||||
      streamSegmentType: StreamSegmentTypeEnum;
 | 
			
		||||
      segments: Array<{
 | 
			
		||||
        __typename?: "UploadSegmentGQL";
 | 
			
		||||
        uploaded: boolean;
 | 
			
		||||
@@ -1827,6 +2057,10 @@ export type GetVideosQuery = {
 | 
			
		||||
        framesPerSecond?: number | null;
 | 
			
		||||
      }>;
 | 
			
		||||
    } | null;
 | 
			
		||||
    playlist?: {
 | 
			
		||||
      __typename?: "HLSPlaylistGQL";
 | 
			
		||||
      segmentDurations: Array<number>;
 | 
			
		||||
    } | null;
 | 
			
		||||
  }>;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -1845,6 +2079,7 @@ export type GetVideoQuery = {
 | 
			
		||||
    } | null;
 | 
			
		||||
    homographyHistory: Array<{
 | 
			
		||||
      __typename?: "HomographyInfoGQL";
 | 
			
		||||
      frameIndex: number;
 | 
			
		||||
      crop: {
 | 
			
		||||
        __typename?: "BoundingBoxGQL";
 | 
			
		||||
        left: number;
 | 
			
		||||
@@ -1931,6 +2166,7 @@ export type GetVideoForClipTimesQuery = {
 | 
			
		||||
  getVideo: {
 | 
			
		||||
    __typename?: "VideoGQL";
 | 
			
		||||
    id: number;
 | 
			
		||||
    framesPerSecond: number;
 | 
			
		||||
    playlist?: {
 | 
			
		||||
      __typename?: "HLSPlaylistGQL";
 | 
			
		||||
      segmentDurations: Array<number>;
 | 
			
		||||
@@ -1972,12 +2208,43 @@ export type GetUploadLinkMutation = {
 | 
			
		||||
  __typename?: "Mutation";
 | 
			
		||||
  getUploadLink: {
 | 
			
		||||
    __typename?: "GetUploadLinkReturn";
 | 
			
		||||
    uploadUrl: string;
 | 
			
		||||
    headers: Array<{
 | 
			
		||||
      __typename?: "Header";
 | 
			
		||||
      key: string;
 | 
			
		||||
      value: string;
 | 
			
		||||
    } | null>;
 | 
			
		||||
    value:
 | 
			
		||||
      | {
 | 
			
		||||
          __typename?: "GetUploadLinkErrors";
 | 
			
		||||
          error:
 | 
			
		||||
            | {
 | 
			
		||||
                __typename?: "MustHaveSetForUploadLinkErr";
 | 
			
		||||
                resolution?: boolean | null;
 | 
			
		||||
                framesPerSecond?: boolean | null;
 | 
			
		||||
              }
 | 
			
		||||
            | { __typename?: "NoInitForChunkedUploadErr" }
 | 
			
		||||
            | {
 | 
			
		||||
                __typename?: "ProcessingFailedErr";
 | 
			
		||||
                processing: {
 | 
			
		||||
                  __typename?: "VideoProcessingGQL";
 | 
			
		||||
                  status: ProcessingStatusEnum;
 | 
			
		||||
                  errors: Array<{
 | 
			
		||||
                    __typename?: "VideoProcessingErrorGQL";
 | 
			
		||||
                    message: string;
 | 
			
		||||
                  }>;
 | 
			
		||||
                };
 | 
			
		||||
              }
 | 
			
		||||
            | { __typename?: "SegmentAlreadyUploadedErr"; segmentId: number }
 | 
			
		||||
            | { __typename?: "TooManyProfileImageUploadsErr" };
 | 
			
		||||
        }
 | 
			
		||||
      | {
 | 
			
		||||
          __typename?: "UploadLink";
 | 
			
		||||
          uploadUrl: string;
 | 
			
		||||
          headers: Array<{
 | 
			
		||||
            __typename?: "Header";
 | 
			
		||||
            key: string;
 | 
			
		||||
            value: string;
 | 
			
		||||
          } | null>;
 | 
			
		||||
        };
 | 
			
		||||
    stream?: {
 | 
			
		||||
      __typename?: "UploadStreamGQL";
 | 
			
		||||
      uploadCompletionCursor: number;
 | 
			
		||||
    } | null;
 | 
			
		||||
  };
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -1989,12 +2256,28 @@ export type GetHlsInitUploadLinkMutation = {
 | 
			
		||||
  __typename?: "Mutation";
 | 
			
		||||
  getHlsInitUploadLink: {
 | 
			
		||||
    __typename?: "GetUploadLinkReturn";
 | 
			
		||||
    uploadUrl: string;
 | 
			
		||||
    headers: Array<{
 | 
			
		||||
      __typename?: "Header";
 | 
			
		||||
      key: string;
 | 
			
		||||
      value: string;
 | 
			
		||||
    } | null>;
 | 
			
		||||
    value:
 | 
			
		||||
      | {
 | 
			
		||||
          __typename?: "GetUploadLinkErrors";
 | 
			
		||||
          error:
 | 
			
		||||
            | { __typename?: "MustHaveSetForUploadLinkErr" }
 | 
			
		||||
            | {
 | 
			
		||||
                __typename?: "NoInitForChunkedUploadErr";
 | 
			
		||||
                segmentType: StreamSegmentTypeEnum;
 | 
			
		||||
              }
 | 
			
		||||
            | { __typename?: "ProcessingFailedErr" }
 | 
			
		||||
            | { __typename?: "SegmentAlreadyUploadedErr" }
 | 
			
		||||
            | { __typename?: "TooManyProfileImageUploadsErr" };
 | 
			
		||||
        }
 | 
			
		||||
      | {
 | 
			
		||||
          __typename?: "UploadLink";
 | 
			
		||||
          uploadUrl: string;
 | 
			
		||||
          headers: Array<{
 | 
			
		||||
            __typename?: "Header";
 | 
			
		||||
            key: string;
 | 
			
		||||
            value: string;
 | 
			
		||||
          } | null>;
 | 
			
		||||
        };
 | 
			
		||||
  };
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -2058,6 +2341,7 @@ export type GetUploadStreamsWithDetailsQuery = {
 | 
			
		||||
        isCompleted: boolean;
 | 
			
		||||
        lastIntendedSegmentBound?: number | null;
 | 
			
		||||
        uploadCompletionCursor: number;
 | 
			
		||||
        uploadsCompleted: number;
 | 
			
		||||
      } | null;
 | 
			
		||||
    }>;
 | 
			
		||||
    pageInfo: {
 | 
			
		||||
@@ -2155,6 +2439,7 @@ export const GetDeployedConfigDocument = gql`
 | 
			
		||||
      devMode
 | 
			
		||||
      environment
 | 
			
		||||
      firebase
 | 
			
		||||
      minimumAllowedAppVersion
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
`;
 | 
			
		||||
@@ -2249,6 +2534,7 @@ export const GetFeedDocument = gql`
 | 
			
		||||
        stream {
 | 
			
		||||
          isCompleted
 | 
			
		||||
        }
 | 
			
		||||
        tableSize
 | 
			
		||||
        tags {
 | 
			
		||||
          tagClasses {
 | 
			
		||||
            name
 | 
			
		||||
@@ -2408,6 +2694,8 @@ export type GetVideoMakePercentageIntervalsQueryResult = Apollo.QueryResult<
 | 
			
		||||
export const GetShotsDocument = gql`
 | 
			
		||||
  query GetShots(
 | 
			
		||||
    $filterInput: FilterInput!
 | 
			
		||||
    $shotsPagination: GetShotsPagination
 | 
			
		||||
    $limit: Int
 | 
			
		||||
    $includeCreatedAt: Boolean! = false
 | 
			
		||||
    $includeUpdatedAt: Boolean! = false
 | 
			
		||||
    $includeCueObjectFeatures: Boolean! = false
 | 
			
		||||
@@ -2420,7 +2708,11 @@ export const GetShotsDocument = gql`
 | 
			
		||||
    $includeMake: Boolean! = false
 | 
			
		||||
    $includeIntendedPocketType: Boolean! = false
 | 
			
		||||
  ) {
 | 
			
		||||
    getShots(filterInput: $filterInput) {
 | 
			
		||||
    getShots(
 | 
			
		||||
      filterInput: $filterInput
 | 
			
		||||
      shotsPagination: $shotsPagination
 | 
			
		||||
      limit: $limit
 | 
			
		||||
    ) {
 | 
			
		||||
      id
 | 
			
		||||
      videoId
 | 
			
		||||
      startFrame
 | 
			
		||||
@@ -2460,6 +2752,8 @@ export const GetShotsDocument = gql`
 | 
			
		||||
 * const { data, loading, error } = useGetShotsQuery({
 | 
			
		||||
 *   variables: {
 | 
			
		||||
 *      filterInput: // value for 'filterInput'
 | 
			
		||||
 *      shotsPagination: // value for 'shotsPagination'
 | 
			
		||||
 *      limit: // value for 'limit'
 | 
			
		||||
 *      includeCreatedAt: // value for 'includeCreatedAt'
 | 
			
		||||
 *      includeUpdatedAt: // value for 'includeUpdatedAt'
 | 
			
		||||
 *      includeCueObjectFeatures: // value for 'includeCueObjectFeatures'
 | 
			
		||||
@@ -2594,10 +2888,21 @@ export type GetShotAnnotationTypesQueryResult = Apollo.QueryResult<
 | 
			
		||||
export const GetProfileImageUploadLinkDocument = gql`
 | 
			
		||||
  mutation getProfileImageUploadLink($fileExt: String = ".png") {
 | 
			
		||||
    getProfileImageUploadLink(fileExt: $fileExt) {
 | 
			
		||||
      uploadUrl
 | 
			
		||||
      headers {
 | 
			
		||||
        key
 | 
			
		||||
        value
 | 
			
		||||
      value {
 | 
			
		||||
        ... on UploadLink {
 | 
			
		||||
          uploadUrl
 | 
			
		||||
          headers {
 | 
			
		||||
            key
 | 
			
		||||
            value
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        ... on GetProfileUploadLinkErrors {
 | 
			
		||||
          error {
 | 
			
		||||
            ... on TooManyProfileImageUploadsErr {
 | 
			
		||||
              linksRequested
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@@ -2931,8 +3236,8 @@ export type GetUsernamesQueryResult = Apollo.QueryResult<
 | 
			
		||||
  GetUsernamesQueryVariables
 | 
			
		||||
>;
 | 
			
		||||
export const GetStreamMonitoringDetailsDocument = gql`
 | 
			
		||||
  query GetStreamMonitoringDetails($videoId: Int!) {
 | 
			
		||||
    getVideo(videoId: $videoId) {
 | 
			
		||||
  query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) {
 | 
			
		||||
    getVideo(videoId: $videoId, debuggingJson: $debuggingJson) {
 | 
			
		||||
      id
 | 
			
		||||
      totalShots
 | 
			
		||||
      makePercentage
 | 
			
		||||
@@ -3010,6 +3315,7 @@ export const GetStreamMonitoringDetailsDocument = gql`
 | 
			
		||||
 * const { data, loading, error } = useGetStreamMonitoringDetailsQuery({
 | 
			
		||||
 *   variables: {
 | 
			
		||||
 *      videoId: // value for 'videoId'
 | 
			
		||||
 *      debuggingJson: // value for 'debuggingJson'
 | 
			
		||||
 *   },
 | 
			
		||||
 * });
 | 
			
		||||
 */
 | 
			
		||||
@@ -3070,6 +3376,7 @@ export const GetVideoUpdatePageDetailsDocument = gql`
 | 
			
		||||
      totalShots
 | 
			
		||||
      makePercentage
 | 
			
		||||
      elapsedTime
 | 
			
		||||
      tableSize
 | 
			
		||||
      tags {
 | 
			
		||||
        tagClasses {
 | 
			
		||||
          name
 | 
			
		||||
@@ -3209,6 +3516,7 @@ export const GetVideoDetailsDocument = gql`
 | 
			
		||||
      totalShotsMade
 | 
			
		||||
      createdAt
 | 
			
		||||
      updatedAt
 | 
			
		||||
      tableSize
 | 
			
		||||
      owner {
 | 
			
		||||
        id
 | 
			
		||||
        firebaseUid
 | 
			
		||||
@@ -3294,11 +3602,9 @@ export const GetVideosDocument = gql`
 | 
			
		||||
  query GetVideos($videoIds: [Int!]!) {
 | 
			
		||||
    getVideos(videoIds: $videoIds) {
 | 
			
		||||
      id
 | 
			
		||||
      playlist {
 | 
			
		||||
        segmentDurations
 | 
			
		||||
      }
 | 
			
		||||
      stream {
 | 
			
		||||
        id
 | 
			
		||||
        streamSegmentType
 | 
			
		||||
        segments {
 | 
			
		||||
          uploaded
 | 
			
		||||
          valid
 | 
			
		||||
@@ -3307,6 +3613,9 @@ export const GetVideosDocument = gql`
 | 
			
		||||
          framesPerSecond
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      playlist {
 | 
			
		||||
        segmentDurations
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
`;
 | 
			
		||||
@@ -3379,6 +3688,7 @@ export const GetVideoDocument = gql`
 | 
			
		||||
        segmentDurations
 | 
			
		||||
      }
 | 
			
		||||
      homographyHistory {
 | 
			
		||||
        frameIndex
 | 
			
		||||
        crop {
 | 
			
		||||
          left
 | 
			
		||||
          top
 | 
			
		||||
@@ -3720,6 +4030,7 @@ export const GetVideoForClipTimesDocument = gql`
 | 
			
		||||
  query GetVideoForClipTimes($videoId: Int!) {
 | 
			
		||||
    getVideo(videoId: $videoId) {
 | 
			
		||||
      id
 | 
			
		||||
      framesPerSecond
 | 
			
		||||
      playlist {
 | 
			
		||||
        segmentDurations
 | 
			
		||||
      }
 | 
			
		||||
@@ -3856,10 +4167,36 @@ export type CreateUploadStreamMutationOptions = Apollo.BaseMutationOptions<
 | 
			
		||||
export const GetUploadLinkDocument = gql`
 | 
			
		||||
  mutation GetUploadLink($videoId: Int!, $segmentIndex: Int!) {
 | 
			
		||||
    getUploadLink(videoId: $videoId, segmentIndex: $segmentIndex) {
 | 
			
		||||
      uploadUrl
 | 
			
		||||
      headers {
 | 
			
		||||
        key
 | 
			
		||||
        value
 | 
			
		||||
      value {
 | 
			
		||||
        ... on UploadLink {
 | 
			
		||||
          uploadUrl
 | 
			
		||||
          headers {
 | 
			
		||||
            key
 | 
			
		||||
            value
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        ... on GetUploadLinkErrors {
 | 
			
		||||
          error {
 | 
			
		||||
            ... on MustHaveSetForUploadLinkErr {
 | 
			
		||||
              resolution
 | 
			
		||||
              framesPerSecond
 | 
			
		||||
            }
 | 
			
		||||
            ... on SegmentAlreadyUploadedErr {
 | 
			
		||||
              segmentId
 | 
			
		||||
            }
 | 
			
		||||
            ... on ProcessingFailedErr {
 | 
			
		||||
              processing {
 | 
			
		||||
                status
 | 
			
		||||
                errors {
 | 
			
		||||
                  message
 | 
			
		||||
                }
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      stream {
 | 
			
		||||
        uploadCompletionCursor
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@@ -3911,10 +4248,21 @@ export type GetUploadLinkMutationOptions = Apollo.BaseMutationOptions<
 | 
			
		||||
export const GetHlsInitUploadLinkDocument = gql`
 | 
			
		||||
  mutation GetHlsInitUploadLink($videoId: Int!) {
 | 
			
		||||
    getHlsInitUploadLink(videoId: $videoId) {
 | 
			
		||||
      uploadUrl
 | 
			
		||||
      headers {
 | 
			
		||||
        key
 | 
			
		||||
        value
 | 
			
		||||
      value {
 | 
			
		||||
        ... on UploadLink {
 | 
			
		||||
          uploadUrl
 | 
			
		||||
          headers {
 | 
			
		||||
            key
 | 
			
		||||
            value
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        ... on GetUploadLinkErrors {
 | 
			
		||||
          error {
 | 
			
		||||
            ... on NoInitForChunkedUploadErr {
 | 
			
		||||
              segmentType
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@@ -4172,6 +4520,7 @@ export const GetUploadStreamsWithDetailsDocument = gql`
 | 
			
		||||
          isCompleted
 | 
			
		||||
          lastIntendedSegmentBound
 | 
			
		||||
          uploadCompletionCursor
 | 
			
		||||
          uploadsCompleted
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      pageInfo {
 | 
			
		||||
 
 | 
			
		||||
@@ -4,5 +4,6 @@ query getDeployedConfig {
 | 
			
		||||
    devMode
 | 
			
		||||
    environment
 | 
			
		||||
    firebase
 | 
			
		||||
    minimumAllowedAppVersion
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -23,6 +23,7 @@ query GetFeed(
 | 
			
		||||
      stream {
 | 
			
		||||
        isCompleted
 | 
			
		||||
      }
 | 
			
		||||
      tableSize
 | 
			
		||||
      tags {
 | 
			
		||||
        tagClasses {
 | 
			
		||||
          name
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,7 @@
 | 
			
		||||
query GetShots(
 | 
			
		||||
  $filterInput: FilterInput!
 | 
			
		||||
  $shotsPagination: GetShotsPagination
 | 
			
		||||
  $limit: Int
 | 
			
		||||
  $includeCreatedAt: Boolean! = false
 | 
			
		||||
  $includeUpdatedAt: Boolean! = false
 | 
			
		||||
  $includeCueObjectFeatures: Boolean! = false
 | 
			
		||||
@@ -12,7 +14,11 @@ query GetShots(
 | 
			
		||||
  $includeMake: Boolean! = false
 | 
			
		||||
  $includeIntendedPocketType: Boolean! = false
 | 
			
		||||
) {
 | 
			
		||||
  getShots(filterInput: $filterInput) {
 | 
			
		||||
  getShots(
 | 
			
		||||
    filterInput: $filterInput
 | 
			
		||||
    shotsPagination: $shotsPagination
 | 
			
		||||
    limit: $limit
 | 
			
		||||
  ) {
 | 
			
		||||
    id
 | 
			
		||||
    videoId
 | 
			
		||||
    startFrame
 | 
			
		||||
 
 | 
			
		||||
@@ -1,9 +1,20 @@
 | 
			
		||||
mutation getProfileImageUploadLink($fileExt: String = ".png") {
 | 
			
		||||
  getProfileImageUploadLink(fileExt: $fileExt) {
 | 
			
		||||
    uploadUrl
 | 
			
		||||
    headers {
 | 
			
		||||
      key
 | 
			
		||||
      value
 | 
			
		||||
    value {
 | 
			
		||||
      ... on UploadLink {
 | 
			
		||||
        uploadUrl
 | 
			
		||||
        headers {
 | 
			
		||||
          key
 | 
			
		||||
          value
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      ... on GetProfileUploadLinkErrors {
 | 
			
		||||
        error {
 | 
			
		||||
          ... on TooManyProfileImageUploadsErr {
 | 
			
		||||
            linksRequested
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
query GetStreamMonitoringDetails($videoId: Int!) {
 | 
			
		||||
  getVideo(videoId: $videoId) {
 | 
			
		||||
query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) {
 | 
			
		||||
  getVideo(videoId: $videoId, debuggingJson: $debuggingJson) {
 | 
			
		||||
    id
 | 
			
		||||
    totalShots
 | 
			
		||||
    makePercentage
 | 
			
		||||
@@ -70,6 +70,7 @@ query GetVideoUpdatePageDetails($videoId: Int!) {
 | 
			
		||||
    totalShots
 | 
			
		||||
    makePercentage
 | 
			
		||||
    elapsedTime
 | 
			
		||||
    tableSize
 | 
			
		||||
    tags {
 | 
			
		||||
      tagClasses {
 | 
			
		||||
        name
 | 
			
		||||
@@ -98,6 +99,7 @@ query GetVideoDetails($videoId: Int!) {
 | 
			
		||||
    totalShotsMade
 | 
			
		||||
    createdAt
 | 
			
		||||
    updatedAt
 | 
			
		||||
    tableSize
 | 
			
		||||
    owner {
 | 
			
		||||
      id
 | 
			
		||||
      firebaseUid
 | 
			
		||||
@@ -116,11 +118,9 @@ query GetVideoDetails($videoId: Int!) {
 | 
			
		||||
query GetVideos($videoIds: [Int!]!) {
 | 
			
		||||
  getVideos(videoIds: $videoIds) {
 | 
			
		||||
    id
 | 
			
		||||
    playlist {
 | 
			
		||||
      segmentDurations
 | 
			
		||||
    }
 | 
			
		||||
    stream {
 | 
			
		||||
      id
 | 
			
		||||
      streamSegmentType
 | 
			
		||||
      segments {
 | 
			
		||||
        uploaded
 | 
			
		||||
        valid
 | 
			
		||||
@@ -129,6 +129,9 @@ query GetVideos($videoIds: [Int!]!) {
 | 
			
		||||
        framesPerSecond
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    playlist {
 | 
			
		||||
      segmentDurations
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -139,6 +142,7 @@ query GetVideo($videoId: Int!) {
 | 
			
		||||
      segmentDurations
 | 
			
		||||
    }
 | 
			
		||||
    homographyHistory {
 | 
			
		||||
      frameIndex
 | 
			
		||||
      crop {
 | 
			
		||||
        left
 | 
			
		||||
        top
 | 
			
		||||
@@ -215,6 +219,7 @@ query GetMedianRunForVideo($videoId: Int!) {
 | 
			
		||||
query GetVideoForClipTimes($videoId: Int!) {
 | 
			
		||||
  getVideo(videoId: $videoId) {
 | 
			
		||||
    id
 | 
			
		||||
    framesPerSecond
 | 
			
		||||
    playlist {
 | 
			
		||||
      segmentDurations
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -6,20 +6,57 @@ mutation CreateUploadStream($videoMetadataInput: VideoMetadataInput!) {
 | 
			
		||||
 | 
			
		||||
mutation GetUploadLink($videoId: Int!, $segmentIndex: Int!) {
 | 
			
		||||
  getUploadLink(videoId: $videoId, segmentIndex: $segmentIndex) {
 | 
			
		||||
    uploadUrl
 | 
			
		||||
    headers {
 | 
			
		||||
      key
 | 
			
		||||
      value
 | 
			
		||||
    value {
 | 
			
		||||
      ... on UploadLink {
 | 
			
		||||
        uploadUrl
 | 
			
		||||
        headers {
 | 
			
		||||
          key
 | 
			
		||||
          value
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      ... on GetUploadLinkErrors {
 | 
			
		||||
        error {
 | 
			
		||||
          ... on MustHaveSetForUploadLinkErr {
 | 
			
		||||
            resolution
 | 
			
		||||
            framesPerSecond
 | 
			
		||||
          }
 | 
			
		||||
          ... on SegmentAlreadyUploadedErr {
 | 
			
		||||
            segmentId
 | 
			
		||||
          }
 | 
			
		||||
          ... on ProcessingFailedErr {
 | 
			
		||||
            processing {
 | 
			
		||||
              status
 | 
			
		||||
              errors {
 | 
			
		||||
                message
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    stream {
 | 
			
		||||
      uploadCompletionCursor
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
mutation GetHlsInitUploadLink($videoId: Int!) {
 | 
			
		||||
  getHlsInitUploadLink(videoId: $videoId) {
 | 
			
		||||
    uploadUrl
 | 
			
		||||
    headers {
 | 
			
		||||
      key
 | 
			
		||||
      value
 | 
			
		||||
    value {
 | 
			
		||||
      ... on UploadLink {
 | 
			
		||||
        uploadUrl
 | 
			
		||||
        headers {
 | 
			
		||||
          key
 | 
			
		||||
          value
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
      ... on GetUploadLinkErrors {
 | 
			
		||||
        error {
 | 
			
		||||
          ... on NoInitForChunkedUploadErr {
 | 
			
		||||
            segmentType
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@@ -72,6 +109,7 @@ query GetUploadStreamsWithDetails(
 | 
			
		||||
        isCompleted
 | 
			
		||||
        lastIntendedSegmentBound
 | 
			
		||||
        uploadCompletionCursor
 | 
			
		||||
        uploadsCompleted
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    pageInfo {
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										169
									
								
								src/schema.gql
									
									
									
									
									
								
							
							
						
						
									
										169
									
								
								src/schema.gql
									
									
									
									
									
								
							@@ -4,12 +4,17 @@ type Query {
 | 
			
		||||
  ): [AggregateResultGQL!]!
 | 
			
		||||
  getBucketSet(keyName: String!): BucketSetGQL
 | 
			
		||||
  getDeployedConfig: DeployedConfigGQL!
 | 
			
		||||
  waitFor(duration: Float!): Float!
 | 
			
		||||
  getVideoMakePercentageIntervals(
 | 
			
		||||
    videoId: ID!
 | 
			
		||||
    intervalDuration: Int! = 300
 | 
			
		||||
  ): [MakePercentageIntervalGQL!]!
 | 
			
		||||
  getShots(filterInput: FilterInput!): [ShotGQL!]!
 | 
			
		||||
  getShotAnnotationTypes: [ShotAnnotationTypeGQL!]!
 | 
			
		||||
  getShots(
 | 
			
		||||
    filterInput: FilterInput!
 | 
			
		||||
    shotsPagination: GetShotsPagination = null
 | 
			
		||||
    limit: Int! = 500
 | 
			
		||||
  ): [ShotGQL!]!
 | 
			
		||||
  getShotAnnotationTypes(errorTypes: Boolean = false): [ShotAnnotationTypeGQL!]!
 | 
			
		||||
  getUser(userId: Int!): UserGQL
 | 
			
		||||
  getLoggedInUser: UserGQL
 | 
			
		||||
  getUsernames(
 | 
			
		||||
@@ -25,7 +30,7 @@ type Query {
 | 
			
		||||
    filters: VideoFilterInput = null
 | 
			
		||||
  ): VideoHistoryGQL!
 | 
			
		||||
  getUserTags: [TagGQL!]!
 | 
			
		||||
  getVideo(videoId: Int!): VideoGQL!
 | 
			
		||||
  getVideo(videoId: Int!, debuggingJson: JSON = null): VideoGQL!
 | 
			
		||||
  getVideos(videoIds: [Int!]!): [VideoGQL!]!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -91,6 +96,7 @@ input FilterInput @oneOf {
 | 
			
		||||
  isLeftMiss: [Boolean!]
 | 
			
		||||
  isRightMiss: [Boolean!]
 | 
			
		||||
  isDirect: [Boolean!]
 | 
			
		||||
  tableSize: RangeFilter
 | 
			
		||||
  bankAngle: RangeFilter
 | 
			
		||||
  bankDistance: RangeFilter
 | 
			
		||||
  kickAngle: RangeFilter
 | 
			
		||||
@@ -104,7 +110,10 @@ input FilterInput @oneOf {
 | 
			
		||||
input RangeFilter {
 | 
			
		||||
  lessThan: Float = null
 | 
			
		||||
  greaterThanEqualTo: Float = null
 | 
			
		||||
  greaterThan: Float = null
 | 
			
		||||
  includeOnNone: Boolean! = false
 | 
			
		||||
  lessThanInclusive: Boolean! = false
 | 
			
		||||
  greaterThanInclusive: Boolean! = true
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
enum PocketEnum {
 | 
			
		||||
@@ -147,6 +156,7 @@ type DeployedConfigGQL {
 | 
			
		||||
  firebase: Boolean!
 | 
			
		||||
  devMode: Boolean!
 | 
			
		||||
  environment: String!
 | 
			
		||||
  minimumAllowedAppVersion: String!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type MakePercentageIntervalGQL {
 | 
			
		||||
@@ -168,6 +178,7 @@ type ShotGQL {
 | 
			
		||||
  user: UserGQL
 | 
			
		||||
  annotations: [ShotAnnotationGQL!]!
 | 
			
		||||
  falsePositiveScore: Float
 | 
			
		||||
  video: VideoGQL
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
"""
 | 
			
		||||
@@ -220,6 +231,7 @@ type ShotAnnotationGQL {
 | 
			
		||||
  type: ShotAnnotationTypeGQL!
 | 
			
		||||
  creator: UserGQL!
 | 
			
		||||
  notes: String!
 | 
			
		||||
  errorDefault: Boolean!
 | 
			
		||||
  createdAt: DateTime
 | 
			
		||||
  updatedAt: DateTime
 | 
			
		||||
}
 | 
			
		||||
@@ -229,15 +241,6 @@ type ShotAnnotationTypeGQL {
 | 
			
		||||
  name: String!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type UserPlayTimeGQL {
 | 
			
		||||
  totalSeconds: Float!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type VideoHistoryGQL {
 | 
			
		||||
  videos: [VideoGQL!]!
 | 
			
		||||
  pageInfo: PageInfoGQL!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type VideoGQL {
 | 
			
		||||
  id: Int!
 | 
			
		||||
  owner: UserGQL
 | 
			
		||||
@@ -255,6 +258,7 @@ type VideoGQL {
 | 
			
		||||
  endTime: DateTime
 | 
			
		||||
  elapsedTime: Float
 | 
			
		||||
  framesPerSecond: Float!
 | 
			
		||||
  tableSize: Float!
 | 
			
		||||
  stream: UploadStreamGQL
 | 
			
		||||
  playlist: HLSPlaylistGQL
 | 
			
		||||
  tags: [VideoTag!]!
 | 
			
		||||
@@ -356,6 +360,8 @@ type IntPoint2D {
 | 
			
		||||
 | 
			
		||||
type VideoProcessingGQL {
 | 
			
		||||
  errors: [VideoProcessingErrorGQL!]!
 | 
			
		||||
  status: ProcessingStatusEnum!
 | 
			
		||||
  statuses: [VideoProcessingStatusGQL!]!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type VideoProcessingErrorGQL {
 | 
			
		||||
@@ -364,6 +370,44 @@ type VideoProcessingErrorGQL {
 | 
			
		||||
  endSegmentIndex: Int
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
enum ProcessingStatusEnum {
 | 
			
		||||
  STARTED
 | 
			
		||||
  FAILED
 | 
			
		||||
  SUCCEEDED
 | 
			
		||||
  SUSPENDED
 | 
			
		||||
  CREATED
 | 
			
		||||
  QUEUED
 | 
			
		||||
  RUNNING
 | 
			
		||||
  REEXTRACTING_FEATURES
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type VideoProcessingStatusGQL {
 | 
			
		||||
  status: ProcessingStatusEnum!
 | 
			
		||||
  appVersion: String!
 | 
			
		||||
  sequenceId: Int!
 | 
			
		||||
  createdAt: DateTime
 | 
			
		||||
  updatedAt: DateTime
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
input GetShotsPagination {
 | 
			
		||||
  createdAfter: CreatedAfter!
 | 
			
		||||
  startFrameAfter: Int!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
input CreatedAfter @oneOf {
 | 
			
		||||
  videoId: Int
 | 
			
		||||
  createdAt: DateTime
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type UserPlayTimeGQL {
 | 
			
		||||
  totalSeconds: Float!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type VideoHistoryGQL {
 | 
			
		||||
  videos: [VideoGQL!]!
 | 
			
		||||
  pageInfo: PageInfoGQL!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type PageInfoGQL {
 | 
			
		||||
  hasNextPage: Boolean!
 | 
			
		||||
  endCursor: String
 | 
			
		||||
@@ -380,10 +424,25 @@ type TagGQL {
 | 
			
		||||
  group: String
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
"""
 | 
			
		||||
The `JSON` scalar type represents JSON values as specified by [ECMA-404](https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf).
 | 
			
		||||
"""
 | 
			
		||||
scalar JSON
 | 
			
		||||
  @specifiedBy(
 | 
			
		||||
    url: "https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf"
 | 
			
		||||
  )
 | 
			
		||||
 | 
			
		||||
type Mutation {
 | 
			
		||||
  createBucketSet(params: CreateBucketSetInput!): BucketSetGQL!
 | 
			
		||||
  setLoggerLevel(path: String!, level: String!): Boolean!
 | 
			
		||||
  getProfileImageUploadLink(fileExt: String = ".png"): GetUploadLinkReturn!
 | 
			
		||||
  addAnnotationToShot(
 | 
			
		||||
    shotId: Int!
 | 
			
		||||
    annotationName: String!
 | 
			
		||||
    notes: String = null
 | 
			
		||||
  ): AddShotAnnotationReturn!
 | 
			
		||||
  getProfileImageUploadLink(
 | 
			
		||||
    fileExt: String = ".png"
 | 
			
		||||
  ): GetProfileUploadLinkReturn!
 | 
			
		||||
  editProfileImageUri(profileImageUri: String!): UserGQL!
 | 
			
		||||
  createUploadStream(
 | 
			
		||||
    videoMetadata: VideoMetadataInput!
 | 
			
		||||
@@ -405,7 +464,44 @@ input CreateBucketSetInput {
 | 
			
		||||
  buckets: [BucketInputGQL!]!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type GetUploadLinkReturn {
 | 
			
		||||
type AddShotAnnotationReturn {
 | 
			
		||||
  value: SuccessfulAddAddShotAnnotationErrors!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
union SuccessfulAddAddShotAnnotationErrors =
 | 
			
		||||
    SuccessfulAdd
 | 
			
		||||
  | AddShotAnnotationErrors
 | 
			
		||||
 | 
			
		||||
type SuccessfulAdd {
 | 
			
		||||
  value: Boolean!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type AddShotAnnotationErrors {
 | 
			
		||||
  error: DoesNotOwnShotErrOtherErrorNeedsNote!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
union DoesNotOwnShotErrOtherErrorNeedsNote =
 | 
			
		||||
    DoesNotOwnShotErr
 | 
			
		||||
  | OtherErrorNeedsNote
 | 
			
		||||
 | 
			
		||||
type DoesNotOwnShotErr {
 | 
			
		||||
  shotId: Int!
 | 
			
		||||
  msg: String
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type OtherErrorNeedsNote {
 | 
			
		||||
  msg: String
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type GetProfileUploadLinkReturn {
 | 
			
		||||
  value: UploadLinkGetProfileUploadLinkErrors!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
union UploadLinkGetProfileUploadLinkErrors =
 | 
			
		||||
    UploadLink
 | 
			
		||||
  | GetProfileUploadLinkErrors
 | 
			
		||||
 | 
			
		||||
type UploadLink {
 | 
			
		||||
  uploadUrl: String!
 | 
			
		||||
  headers: [Header]!
 | 
			
		||||
}
 | 
			
		||||
@@ -415,6 +511,14 @@ type Header {
 | 
			
		||||
  value: String!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type GetProfileUploadLinkErrors {
 | 
			
		||||
  error: TooManyProfileImageUploadsErr!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type TooManyProfileImageUploadsErr {
 | 
			
		||||
  linksRequested: Int!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type CreateUploadStreamReturn {
 | 
			
		||||
  videoId: Int!
 | 
			
		||||
}
 | 
			
		||||
@@ -424,7 +528,7 @@ input VideoMetadataInput {
 | 
			
		||||
  startTime: DateTime = null
 | 
			
		||||
  endTime: DateTime = null
 | 
			
		||||
  gameType: String = null
 | 
			
		||||
  tableSize: String = null
 | 
			
		||||
  tableSize: Float = null
 | 
			
		||||
  uploadStreamMetadataInput: UploadStreamMetadataInput = null
 | 
			
		||||
  lastIntendedSegmentBound: Int = null
 | 
			
		||||
  streamSegmentType: StreamSegmentTypeEnum = null
 | 
			
		||||
@@ -455,3 +559,38 @@ input VideoResolution {
 | 
			
		||||
  width: Int!
 | 
			
		||||
  height: Int!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type GetUploadLinkReturn {
 | 
			
		||||
  value: UploadLinkGetUploadLinkErrors!
 | 
			
		||||
  stream: UploadStreamGQL
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
union UploadLinkGetUploadLinkErrors = UploadLink | GetUploadLinkErrors
 | 
			
		||||
 | 
			
		||||
type GetUploadLinkErrors {
 | 
			
		||||
  error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErr!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErr =
 | 
			
		||||
    MustHaveSetForUploadLinkErr
 | 
			
		||||
  | SegmentAlreadyUploadedErr
 | 
			
		||||
  | ProcessingFailedErr
 | 
			
		||||
  | NoInitForChunkedUploadErr
 | 
			
		||||
  | TooManyProfileImageUploadsErr
 | 
			
		||||
 | 
			
		||||
type MustHaveSetForUploadLinkErr {
 | 
			
		||||
  resolution: Boolean
 | 
			
		||||
  framesPerSecond: Boolean
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type SegmentAlreadyUploadedErr {
 | 
			
		||||
  segmentId: Int!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type ProcessingFailedErr {
 | 
			
		||||
  processing: VideoProcessingGQL!
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type NoInitForChunkedUploadErr {
 | 
			
		||||
  segmentType: StreamSegmentTypeEnum!
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user