Compare commits

..

1 Commits

Author SHA1 Message Date
3e6dabe12a Use BigInt for video export file size
All checks were successful
Tests / Tests (pull_request) Successful in 6m3s
2026-07-24 20:09:19 -07:00
3 changed files with 30 additions and 60 deletions

View File

@@ -4302,7 +4302,7 @@ export type VideoExportJobGql = {
createdAt?: Maybe<Scalars["DateTime"]["output"]>; createdAt?: Maybe<Scalars["DateTime"]["output"]>;
downloadUrl?: Maybe<Scalars["String"]["output"]>; downloadUrl?: Maybe<Scalars["String"]["output"]>;
expiresAt?: Maybe<Scalars["DateTime"]["output"]>; expiresAt?: Maybe<Scalars["DateTime"]["output"]>;
fileSizeBytes?: Maybe<Scalars["Int"]["output"]>; fileSizeBytes?: Maybe<Scalars["BigInt"]["output"]>;
id: Scalars["Int"]["output"]; id: Scalars["Int"]["output"];
mode: VideoExportModeEnum; mode: VideoExportModeEnum;
runId?: Maybe<Scalars["Int"]["output"]>; runId?: Maybe<Scalars["Int"]["output"]>;
@@ -6874,10 +6874,8 @@ export type ReactToVideoMutation = {
}; };
export type GetShotLabVideosQueryVariables = Exact<{ export type GetShotLabVideosQueryVariables = Exact<{
feedInput: VideoFeedInputGql; userId: Scalars["Int"]["input"];
includePrivate: IncludePrivateEnum;
limit?: Scalars["Int"]["input"]; limit?: Scalars["Int"]["input"];
after?: InputMaybe<Scalars["String"]["input"]>;
}>; }>;
export type GetShotLabVideosQuery = { export type GetShotLabVideosQuery = {
@@ -6905,11 +6903,6 @@ export type GetShotLabVideosQuery = {
lastSegmentUploadedAt?: any | null; lastSegmentUploadedAt?: any | null;
} | null; } | null;
}>; }>;
pageInfo: {
__typename?: "PageInfoGQL";
hasNextPage: boolean;
endCursor?: string | null;
};
}; };
}; };
@@ -9251,7 +9244,7 @@ export type VideoExportJobFieldsFragment = {
shotIds?: Array<number> | null; shotIds?: Array<number> | null;
runId?: number | null; runId?: number | null;
downloadUrl?: string | null; downloadUrl?: string | null;
fileSizeBytes?: number | null; fileSizeBytes?: any | null;
expiresAt?: any | null; expiresAt?: any | null;
createdAt?: any | null; createdAt?: any | null;
}; };
@@ -9273,7 +9266,7 @@ export type RequestVideoExportMutation = {
shotIds?: Array<number> | null; shotIds?: Array<number> | null;
runId?: number | null; runId?: number | null;
downloadUrl?: string | null; downloadUrl?: string | null;
fileSizeBytes?: number | null; fileSizeBytes?: any | null;
expiresAt?: any | null; expiresAt?: any | null;
createdAt?: any | null; createdAt?: any | null;
}; };
@@ -9305,7 +9298,7 @@ export type VideoExportJobQuery = {
shotIds?: Array<number> | null; shotIds?: Array<number> | null;
runId?: number | null; runId?: number | null;
downloadUrl?: string | null; downloadUrl?: string | null;
fileSizeBytes?: number | null; fileSizeBytes?: any | null;
expiresAt?: any | null; expiresAt?: any | null;
createdAt?: any | null; createdAt?: any | null;
} | null; } | null;
@@ -9329,7 +9322,7 @@ export type MyVideoExportsQuery = {
shotIds?: Array<number> | null; shotIds?: Array<number> | null;
runId?: number | null; runId?: number | null;
downloadUrl?: string | null; downloadUrl?: string | null;
fileSizeBytes?: number | null; fileSizeBytes?: any | null;
expiresAt?: any | null; expiresAt?: any | null;
createdAt?: any | null; createdAt?: any | null;
}>; }>;
@@ -15147,18 +15140,12 @@ export type ReactToVideoMutationOptions = Apollo.BaseMutationOptions<
ReactToVideoMutationVariables ReactToVideoMutationVariables
>; >;
export const GetShotLabVideosDocument = gql` export const GetShotLabVideosDocument = gql`
query GetShotLabVideos( query GetShotLabVideos($userId: Int!, $limit: Int! = 25) {
$feedInput: VideoFeedInputGQL!
$includePrivate: IncludePrivateEnum!
$limit: Int! = 25
$after: String = null
) {
getFeedVideos( getFeedVideos(
limit: $limit limit: $limit
after: $after
includeCallersVideos: false includeCallersVideos: false
includePrivate: $includePrivate includePrivate: MINE
feedInput: $feedInput feedInput: { userId: $userId }
) { ) {
videos { videos {
id id
@@ -15178,10 +15165,6 @@ export const GetShotLabVideosDocument = gql`
lastSegmentUploadedAt lastSegmentUploadedAt
} }
} }
pageInfo {
hasNextPage
endCursor
}
} }
} }
`; `;
@@ -15198,10 +15181,8 @@ export const GetShotLabVideosDocument = gql`
* @example * @example
* const { data, loading, error } = useGetShotLabVideosQuery({ * const { data, loading, error } = useGetShotLabVideosQuery({
* variables: { * variables: {
* feedInput: // value for 'feedInput' * userId: // value for 'userId'
* includePrivate: // value for 'includePrivate'
* limit: // value for 'limit' * limit: // value for 'limit'
* after: // value for 'after'
* }, * },
* }); * });
*/ */

View File

@@ -1,19 +1,12 @@
# Lightweight two-step picker data for Shot Lab's video-first source: recent # Lightweight two-step picker data for Shot Lab's video-first source: the
# videos from the requested audience (mine, followed users, or public), then # caller's recent videos (completed or still uploading), then that video's
# that video's shots. The stream fields hint at "actively updating" without # shots. The stream fields hint at "actively updating" without gating.
# gating. query GetShotLabVideos($userId: Int!, $limit: Int! = 25) {
query GetShotLabVideos(
$feedInput: VideoFeedInputGQL!
$includePrivate: IncludePrivateEnum!
$limit: Int! = 25
$after: String = null
) {
getFeedVideos( getFeedVideos(
limit: $limit limit: $limit
after: $after
includeCallersVideos: false includeCallersVideos: false
includePrivate: $includePrivate includePrivate: MINE
feedInput: $feedInput feedInput: { userId: $userId }
) { ) {
videos { videos {
id id
@@ -33,10 +26,6 @@ query GetShotLabVideos(
lastSegmentUploadedAt lastSegmentUploadedAt
} }
} }
pageInfo {
hasNextPage
endCursor
}
} }
} }

View File

@@ -531,19 +531,6 @@ type GetUploadLinksReturn {
stream: UploadStreamGQL stream: UploadStreamGQL
} }
type SegmentUploadLink {
segmentIndex: Int!
uploadUrl: String!
headers: [Header]!
}
type UploadLinkBatch {
links: [SegmentUploadLink!]!
alreadyUploaded: [Int!]!
}
union UploadLinkBatchGetUploadLinkErrors = UploadLinkBatch | GetUploadLinkErrors
type HLSPlaylistGQL { type HLSPlaylistGQL {
videoId: Int! videoId: Int!
m3u8Text: String! m3u8Text: String!
@@ -1308,6 +1295,12 @@ type SegmentAlreadyUploadedErr {
segmentId: Int! segmentId: Int!
} }
type SegmentUploadLink {
segmentIndex: Int!
uploadUrl: String!
headers: [Header]!
}
type SerializedShotPathsGQL { type SerializedShotPathsGQL {
b64EncodedBuffer: String b64EncodedBuffer: String
} }
@@ -1794,6 +1787,13 @@ type UploadLink {
headers: [Header]! headers: [Header]!
} }
type UploadLinkBatch {
links: [SegmentUploadLink!]!
alreadyUploaded: [Int!]!
}
union UploadLinkBatchGetUploadLinkErrors = UploadLinkBatch | GetUploadLinkErrors
union UploadLinkGetProfileUploadLinkErrors = union UploadLinkGetProfileUploadLinkErrors =
UploadLink UploadLink
| GetProfileUploadLinkErrors | GetProfileUploadLinkErrors
@@ -1923,7 +1923,7 @@ type VideoExportJobGQL {
shotIds: [Int!] shotIds: [Int!]
runId: Int runId: Int
downloadUrl: String downloadUrl: String
fileSizeBytes: Int fileSizeBytes: BigInt
expiresAt: DateTime expiresAt: DateTime
createdAt: DateTime createdAt: DateTime
} }