Create new get feed operation #113

Merged
kkathuang merged 1 commits from kat/add-feed into master 2024-11-04 15:13:57 -07:00
2 changed files with 195 additions and 0 deletions

View File

@ -2786,6 +2786,50 @@ export type GetFeedQuery = {
};
};
export type GetVideoFeedQueryVariables = Exact<{
limit?: Scalars["Int"]["input"];
after?: InputMaybe<Scalars["String"]["input"]>;
filters?: InputMaybe<VideoFilterInput>;
}>;
export type GetVideoFeedQuery = {
__typename?: "Query";
getFeedVideos: {
__typename?: "VideoHistoryGQL";
videos: Array<{
__typename?: "VideoGQL";
id: number;
name?: string | null;
screenshotUri?: string | null;
totalShotsMade: number;
totalShots: number;
makePercentage: number;
createdAt?: any | null;
updatedAt?: any | null;
startTime?: any | null;
endTime?: any | null;
elapsedTime?: number | null;
tableSize: number;
owner?: { __typename?: "UserGQL"; username: string } | null;
stream?: {
__typename?: "UploadStreamGQL";
id: string;
isCompleted: boolean;
} | null;
tags: Array<{
__typename?: "VideoTag";
name: string;
tagClasses: Array<{ __typename?: "VideoTagClass"; name: string }>;
}>;
}>;
pageInfo: {
__typename?: "PageInfoGQL";
hasNextPage: boolean;
endCursor?: string | null;
};
};
};
export type GetVideoMakePercentageIntervalsQueryVariables = Exact<{
videoId: Scalars["ID"]["input"];
intervalDuration: Scalars["Int"]["input"];
@ -4285,6 +4329,116 @@ export type GetFeedQueryResult = Apollo.QueryResult<
GetFeedQuery,
GetFeedQueryVariables
>;
export const GetVideoFeedDocument = gql`
query GetVideoFeed(
$limit: Int! = 5
$after: String = null
$filters: VideoFilterInput = null
) {
getFeedVideos(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
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
`;
/**
* __useGetVideoFeedQuery__
*
* To run a query within a React component, call `useGetVideoFeedQuery` and pass it any options that fit your needs.
* When your component renders, `useGetVideoFeedQuery` returns an object from Apollo Client that contains loading, error, and data properties
* you can use to render your UI.
*
* @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
*
* @example
* const { data, loading, error } = useGetVideoFeedQuery({
* variables: {
* limit: // value for 'limit'
* after: // value for 'after'
* filters: // value for 'filters'
* },
* });
*/
export function useGetVideoFeedQuery(
baseOptions?: Apollo.QueryHookOptions<
GetVideoFeedQuery,
GetVideoFeedQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<GetVideoFeedQuery, GetVideoFeedQueryVariables>(
GetVideoFeedDocument,
options,
);
}
export function useGetVideoFeedLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetVideoFeedQuery,
GetVideoFeedQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<GetVideoFeedQuery, GetVideoFeedQueryVariables>(
GetVideoFeedDocument,
options,
);
}
export function useGetVideoFeedSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetVideoFeedQuery,
GetVideoFeedQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<GetVideoFeedQuery, GetVideoFeedQueryVariables>(
GetVideoFeedDocument,
options,
);
}
export type GetVideoFeedQueryHookResult = ReturnType<
typeof useGetVideoFeedQuery
>;
export type GetVideoFeedLazyQueryHookResult = ReturnType<
typeof useGetVideoFeedLazyQuery
>;
export type GetVideoFeedSuspenseQueryHookResult = ReturnType<
typeof useGetVideoFeedSuspenseQuery
>;
export type GetVideoFeedQueryResult = Apollo.QueryResult<
GetVideoFeedQuery,
GetVideoFeedQueryVariables
>;
export const GetVideoMakePercentageIntervalsDocument = gql`
query GetVideoMakePercentageIntervals(
$videoId: ID!

View File

@ -38,3 +38,44 @@ query GetFeed(
}
}
}
query GetVideoFeed(
$limit: Int! = 5
$after: String = null
$filters: VideoFilterInput = null
) {
getFeedVideos(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
}
}
pageInfo {
hasNextPage
endCursor
}
}
}