Compare commits

..

2 Commits

Author SHA1 Message Date
d6b9d5e9c5 merge
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2025-03-31 14:25:39 -07:00
1f33ba2531 Add support for video reaction 2025-03-31 14:24:58 -07:00
5 changed files with 0 additions and 415 deletions

View File

@@ -3191,7 +3191,6 @@ export type GetFeedQuery = {
id: string; id: string;
lastIntendedSegmentBound?: number | null; lastIntendedSegmentBound?: number | null;
isCompleted: boolean; isCompleted: boolean;
streamSegmentType: StreamSegmentTypeEnum;
} | null; } | null;
tags: Array<{ tags: Array<{
__typename?: "VideoTag"; __typename?: "VideoTag";
@@ -3211,23 +3210,6 @@ export type GetFeedQuery = {
status: ProcessingStatusEnum; status: ProcessingStatusEnum;
}>; }>;
} | null; } | null;
reactions: Array<{
__typename?: "ReactionGQL";
videoId: number;
reaction: ReactionEnum;
user: {
__typename?: "UserGQL";
id: number;
username: string;
profileImageUri?: string | null;
followers?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
profileImageUri?: string | null;
}> | null;
};
}>;
}>; }>;
pageInfo: { pageInfo: {
__typename?: "PageInfoGQL"; __typename?: "PageInfoGQL";
@@ -3265,7 +3247,6 @@ export type VideoCardFieldsFragment = {
id: string; id: string;
lastIntendedSegmentBound?: number | null; lastIntendedSegmentBound?: number | null;
isCompleted: boolean; isCompleted: boolean;
streamSegmentType: StreamSegmentTypeEnum;
} | null; } | null;
tags: Array<{ tags: Array<{
__typename?: "VideoTag"; __typename?: "VideoTag";
@@ -3282,23 +3263,6 @@ export type VideoCardFieldsFragment = {
status: ProcessingStatusEnum; status: ProcessingStatusEnum;
}>; }>;
} | null; } | null;
reactions: Array<{
__typename?: "ReactionGQL";
videoId: number;
reaction: ReactionEnum;
user: {
__typename?: "UserGQL";
id: number;
username: string;
profileImageUri?: string | null;
followers?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
profileImageUri?: string | null;
}> | null;
};
}>;
}; };
export type GetVideoFeedQueryVariables = Exact<{ export type GetVideoFeedQueryVariables = Exact<{
@@ -3342,7 +3306,6 @@ export type GetVideoFeedQuery = {
id: string; id: string;
lastIntendedSegmentBound?: number | null; lastIntendedSegmentBound?: number | null;
isCompleted: boolean; isCompleted: boolean;
streamSegmentType: StreamSegmentTypeEnum;
} | null; } | null;
tags: Array<{ tags: Array<{
__typename?: "VideoTag"; __typename?: "VideoTag";
@@ -3362,23 +3325,6 @@ export type GetVideoFeedQuery = {
status: ProcessingStatusEnum; status: ProcessingStatusEnum;
}>; }>;
} | null; } | null;
reactions: Array<{
__typename?: "ReactionGQL";
videoId: number;
reaction: ReactionEnum;
user: {
__typename?: "UserGQL";
id: number;
username: string;
profileImageUri?: string | null;
followers?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
profileImageUri?: string | null;
}> | null;
};
}>;
}>; }>;
pageInfo: { pageInfo: {
__typename?: "PageInfoGQL"; __typename?: "PageInfoGQL";
@@ -3582,22 +3528,10 @@ export type GetMedalsQuery = {
}; };
}; };
export type ReactToVideoMutationVariables = Exact<{
videoId: Scalars["Int"]["input"];
reaction?: InputMaybe<ReactionEnum>;
}>;
export type ReactToVideoMutation = {
__typename?: "Mutation";
reactToVideo: boolean;
};
export type GetRunsForHighlightsQueryVariables = Exact<{ export type GetRunsForHighlightsQueryVariables = Exact<{
filterInput: RunFilterInput; filterInput: RunFilterInput;
runIds?: InputMaybe<Array<Scalars["Int"]["input"]> | Scalars["Int"]["input"]>; runIds?: InputMaybe<Array<Scalars["Int"]["input"]> | Scalars["Int"]["input"]>;
runsOrdering?: InputMaybe<GetRunsOrdering>; runsOrdering?: InputMaybe<GetRunsOrdering>;
limit?: Scalars["Int"]["input"];
countRespectsLimit?: Scalars["Boolean"]["input"];
}>; }>;
export type GetRunsForHighlightsQuery = { export type GetRunsForHighlightsQuery = {
@@ -3617,55 +3551,6 @@ export type GetRunsForHighlightsQuery = {
}; };
}; };
export type PocketingIntentionFragmentFragment = {
__typename?: "PocketingIntentionFeaturesGQL";
make?: boolean | null;
targetPocketDistance?: number | null;
targetPocketAngle?: number | null;
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
};
export type GetRunsWithTimestampsQueryVariables = Exact<{
filterInput: RunFilterInput;
runIds?: InputMaybe<Array<Scalars["Int"]["input"]> | Scalars["Int"]["input"]>;
runsOrdering?: InputMaybe<GetRunsOrdering>;
}>;
export type GetRunsWithTimestampsQuery = {
__typename?: "Query";
getRuns: {
__typename?: "GetRunsResult";
count?: number | null;
runIds: Array<number>;
runs: Array<{
__typename?: "RunGQL";
id: number;
runLength: number;
userId: number;
videoId: number;
shots: Array<{
__typename?: "ShotGQL";
videoId: number;
id: number;
createdAt?: any | null;
pocketingIntentionFeatures?: {
__typename?: "PocketingIntentionFeaturesGQL";
make?: boolean | null;
targetPocketDistance?: number | null;
targetPocketAngle?: number | null;
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
} | null;
}>;
}>;
};
};
export type GetSerializedShotPathsQueryVariables = Exact<{ export type GetSerializedShotPathsQueryVariables = Exact<{
filterInput: FilterInput; filterInput: FilterInput;
}>; }>;
@@ -3834,15 +3719,6 @@ export type GetShotsWithMetadataFilterResultQuery = {
name: string; name: string;
}; };
}>; }>;
video?: {
__typename?: "VideoGQL";
id: number;
stream?: {
__typename?: "UploadStreamGQL";
id: string;
streamSegmentType: StreamSegmentTypeEnum;
} | null;
} | null;
}>; }>;
}; };
}; };
@@ -3912,15 +3788,6 @@ export type GetShotsWithMetadataQuery = {
name: string; name: string;
}; };
}>; }>;
video?: {
__typename?: "VideoGQL";
id: number;
stream?: {
__typename?: "UploadStreamGQL";
id: string;
streamSegmentType: StreamSegmentTypeEnum;
} | null;
} | null;
}>; }>;
}; };
}; };
@@ -3979,15 +3846,6 @@ export type GetShotsByIdsQuery = {
notes: string; notes: string;
type: { __typename?: "ShotAnnotationTypeGQL"; id: number; name: string }; type: { __typename?: "ShotAnnotationTypeGQL"; id: number; name: string };
}>; }>;
video?: {
__typename?: "VideoGQL";
id: number;
stream?: {
__typename?: "UploadStreamGQL";
id: string;
streamSegmentType: StreamSegmentTypeEnum;
} | null;
} | null;
}>; }>;
}; };
@@ -4039,15 +3897,6 @@ export type ShotWithAllFeaturesFragment = {
notes: string; notes: string;
type: { __typename?: "ShotAnnotationTypeGQL"; id: number; name: string }; type: { __typename?: "ShotAnnotationTypeGQL"; id: number; name: string };
}>; }>;
video?: {
__typename?: "VideoGQL";
id: number;
stream?: {
__typename?: "UploadStreamGQL";
id: string;
streamSegmentType: StreamSegmentTypeEnum;
} | null;
} | null;
}; };
export type EditShotMutationVariables = Exact<{ export type EditShotMutationVariables = Exact<{
@@ -4116,15 +3965,6 @@ export type EditShotMutation = {
name: string; name: string;
}; };
}>; }>;
video?: {
__typename?: "VideoGQL";
id: number;
stream?: {
__typename?: "UploadStreamGQL";
id: string;
streamSegmentType: StreamSegmentTypeEnum;
} | null;
} | null;
} | null; } | null;
}; };
}; };
@@ -5148,7 +4988,6 @@ export const VideoCardFieldsFragmentDoc = gql`
id id
lastIntendedSegmentBound lastIntendedSegmentBound
isCompleted isCompleted
streamSegmentType
} }
tableSize tableSize
tags { tags {
@@ -5167,20 +5006,6 @@ export const VideoCardFieldsFragmentDoc = gql`
status status
} }
} }
reactions {
videoId
user {
id
username
profileImageUri
followers {
id
username
profileImageUri
}
}
reaction
}
} }
`; `;
export const MedalFieldsFragmentDoc = gql` export const MedalFieldsFragmentDoc = gql`
@@ -5189,17 +5014,6 @@ export const MedalFieldsFragmentDoc = gql`
nickname nickname
} }
`; `;
export const PocketingIntentionFragmentFragmentDoc = gql`
fragment PocketingIntentionFragment on PocketingIntentionFeaturesGQL {
make
targetPocketDistance
targetPocketAngle
targetPocketAngleDirection
marginOfErrorInDegrees
intendedPocketType
difficulty
}
`;
export const ShotWithAllFeaturesFragmentDoc = gql` export const ShotWithAllFeaturesFragmentDoc = gql`
fragment ShotWithAllFeatures on ShotGQL { fragment ShotWithAllFeatures on ShotGQL {
id id
@@ -5254,13 +5068,6 @@ export const ShotWithAllFeaturesFragmentDoc = gql`
} }
notes notes
} }
video {
id
stream {
id
streamSegmentType
}
}
} }
`; `;
export const UserFragmentFragmentDoc = gql` export const UserFragmentFragmentDoc = gql`
@@ -6124,69 +5931,16 @@ export type GetMedalsQueryResult = Apollo.QueryResult<
GetMedalsQuery, GetMedalsQuery,
GetMedalsQueryVariables GetMedalsQueryVariables
>; >;
export const ReactToVideoDocument = gql`
mutation ReactToVideo($videoId: Int!, $reaction: ReactionEnum) {
reactToVideo(videoId: $videoId, reaction: $reaction)
}
`;
export type ReactToVideoMutationFn = Apollo.MutationFunction<
ReactToVideoMutation,
ReactToVideoMutationVariables
>;
/**
* __useReactToVideoMutation__
*
* To run a mutation, you first call `useReactToVideoMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useReactToVideoMutation` returns a tuple that includes:
* - A mutate function that you can call at any time to execute the mutation
* - An object with fields that represent the current status of the mutation's execution
*
* @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
*
* @example
* const [reactToVideoMutation, { data, loading, error }] = useReactToVideoMutation({
* variables: {
* videoId: // value for 'videoId'
* reaction: // value for 'reaction'
* },
* });
*/
export function useReactToVideoMutation(
baseOptions?: Apollo.MutationHookOptions<
ReactToVideoMutation,
ReactToVideoMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<
ReactToVideoMutation,
ReactToVideoMutationVariables
>(ReactToVideoDocument, options);
}
export type ReactToVideoMutationHookResult = ReturnType<
typeof useReactToVideoMutation
>;
export type ReactToVideoMutationResult =
Apollo.MutationResult<ReactToVideoMutation>;
export type ReactToVideoMutationOptions = Apollo.BaseMutationOptions<
ReactToVideoMutation,
ReactToVideoMutationVariables
>;
export const GetRunsForHighlightsDocument = gql` export const GetRunsForHighlightsDocument = gql`
query GetRunsForHighlights( query GetRunsForHighlights(
$filterInput: RunFilterInput! $filterInput: RunFilterInput!
$runIds: [Int!] = null $runIds: [Int!] = null
$runsOrdering: GetRunsOrdering $runsOrdering: GetRunsOrdering
$limit: Int! = 500
$countRespectsLimit: Boolean! = false
) { ) {
getRuns( getRuns(
filterInput: $filterInput filterInput: $filterInput
runIds: $runIds runIds: $runIds
runsOrdering: $runsOrdering runsOrdering: $runsOrdering
limit: $limit
countRespectsLimit: $countRespectsLimit
) { ) {
count count
runs { runs {
@@ -6219,8 +5973,6 @@ export const GetRunsForHighlightsDocument = gql`
* filterInput: // value for 'filterInput' * filterInput: // value for 'filterInput'
* runIds: // value for 'runIds' * runIds: // value for 'runIds'
* runsOrdering: // value for 'runsOrdering' * runsOrdering: // value for 'runsOrdering'
* limit: // value for 'limit'
* countRespectsLimit: // value for 'countRespectsLimit'
* }, * },
* }); * });
*/ */
@@ -6273,105 +6025,6 @@ export type GetRunsForHighlightsQueryResult = Apollo.QueryResult<
GetRunsForHighlightsQuery, GetRunsForHighlightsQuery,
GetRunsForHighlightsQueryVariables GetRunsForHighlightsQueryVariables
>; >;
export const GetRunsWithTimestampsDocument = gql`
query GetRunsWithTimestamps(
$filterInput: RunFilterInput!
$runIds: [Int!] = null
$runsOrdering: GetRunsOrdering
) {
getRuns(
filterInput: $filterInput
runIds: $runIds
runsOrdering: $runsOrdering
) {
count
runs {
id
runLength
userId
videoId
shots {
videoId
id
createdAt
pocketingIntentionFeatures {
...PocketingIntentionFragment
}
}
}
runIds
}
}
${PocketingIntentionFragmentFragmentDoc}
`;
/**
* __useGetRunsWithTimestampsQuery__
*
* To run a query within a React component, call `useGetRunsWithTimestampsQuery` and pass it any options that fit your needs.
* When your component renders, `useGetRunsWithTimestampsQuery` 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 } = useGetRunsWithTimestampsQuery({
* variables: {
* filterInput: // value for 'filterInput'
* runIds: // value for 'runIds'
* runsOrdering: // value for 'runsOrdering'
* },
* });
*/
export function useGetRunsWithTimestampsQuery(
baseOptions: Apollo.QueryHookOptions<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>(GetRunsWithTimestampsDocument, options);
}
export function useGetRunsWithTimestampsLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>(GetRunsWithTimestampsDocument, options);
}
export function useGetRunsWithTimestampsSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>(GetRunsWithTimestampsDocument, options);
}
export type GetRunsWithTimestampsQueryHookResult = ReturnType<
typeof useGetRunsWithTimestampsQuery
>;
export type GetRunsWithTimestampsLazyQueryHookResult = ReturnType<
typeof useGetRunsWithTimestampsLazyQuery
>;
export type GetRunsWithTimestampsSuspenseQueryHookResult = ReturnType<
typeof useGetRunsWithTimestampsSuspenseQuery
>;
export type GetRunsWithTimestampsQueryResult = Apollo.QueryResult<
GetRunsWithTimestampsQuery,
GetRunsWithTimestampsQueryVariables
>;
export const GetSerializedShotPathsDocument = gql` export const GetSerializedShotPathsDocument = gql`
query GetSerializedShotPaths($filterInput: FilterInput!) { query GetSerializedShotPaths($filterInput: FilterInput!) {
getShots(filterInput: $filterInput) { getShots(filterInput: $filterInput) {

View File

@@ -40,7 +40,6 @@ fragment VideoCardFields on VideoGQL {
id id
lastIntendedSegmentBound lastIntendedSegmentBound
isCompleted isCompleted
streamSegmentType
} }
tableSize tableSize
tags { tags {
@@ -59,20 +58,6 @@ fragment VideoCardFields on VideoGQL {
status status
} }
} }
reactions {
videoId
user {
id
username
profileImageUri
followers {
id
username
profileImageUri
}
}
reaction
}
} }
query GetVideoFeed( query GetVideoFeed(

View File

@@ -1,3 +0,0 @@
mutation ReactToVideo($videoId: Int!, $reaction: ReactionEnum) {
reactToVideo(videoId: $videoId, reaction: $reaction)
}

View File

@@ -2,45 +2,6 @@ query GetRunsForHighlights(
$filterInput: RunFilterInput! $filterInput: RunFilterInput!
$runIds: [Int!] = null $runIds: [Int!] = null
$runsOrdering: GetRunsOrdering $runsOrdering: GetRunsOrdering
$limit: Int! = 500
$countRespectsLimit: Boolean! = false
) {
getRuns(
filterInput: $filterInput
runIds: $runIds
runsOrdering: $runsOrdering
limit: $limit
countRespectsLimit: $countRespectsLimit
) {
count
runs {
id
runLength
userId
videoId
shots {
videoId
id
}
}
runIds
}
}
fragment PocketingIntentionFragment on PocketingIntentionFeaturesGQL {
make
targetPocketDistance
targetPocketAngle
targetPocketAngleDirection
marginOfErrorInDegrees
intendedPocketType
difficulty
}
query GetRunsWithTimestamps(
$filterInput: RunFilterInput!
$runIds: [Int!] = null
$runsOrdering: GetRunsOrdering
) { ) {
getRuns( getRuns(
filterInput: $filterInput filterInput: $filterInput
@@ -56,10 +17,6 @@ query GetRunsWithTimestamps(
shots { shots {
videoId videoId
id id
createdAt
pocketingIntentionFeatures {
...PocketingIntentionFragment
}
} }
} }
runIds runIds

View File

@@ -185,13 +185,6 @@ fragment ShotWithAllFeatures on ShotGQL {
} }
notes notes
} }
video {
id
stream {
id
streamSegmentType
}
}
} }
mutation EditShot($shotId: Int!, $fieldsToEdit: EditableShotFieldInputGQL!) { mutation EditShot($shotId: Int!, $fieldsToEdit: EditableShotFieldInputGQL!) {