Compare commits

...

10 Commits

Author SHA1 Message Date
84daf2d136 Reintroduce retireTags 2025-03-25 14:31:19 -06:00
6558fb60e9 Add break heuristic 2025-03-25 14:05:12 -06:00
6462a6a464 Merge pull request 'Add delete tags' (#170) from mk/delete-tag into master
Reviewed-on: #170
2025-03-21 18:26:33 -06:00
41a5bb7609 Add delete tags
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2025-03-21 17:22:24 -07:00
b8aaabea8b Merge pull request 'RetireTags mutation operation' (#169) from loewy/retire-tags-operation into master
Reviewed-on: #169
2025-03-21 15:50:59 -06:00
2745521664 add operations to retire tag
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2025-03-21 14:38:37 -07:00
8efa2e067c Merge pull request 'Add functionality to retire tags' (#167) from mk/retire-tags-gql into master
Reviewed-on: #167
2025-03-21 14:39:27 -06:00
919fe5ba24 Merge branch 'master' into mk/retire-tags-gql
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2025-03-19 15:08:46 -06:00
7ff60dc9c5 Merge pull request 'Revert "Merge pull request 'Add functionality for retiring tags' (#165) from mk/retire-tags-gql into master"' (#166) from mk/revert-retire-tags into master
Reviewed-on: #166
2025-03-19 15:08:16 -06:00
7e0d8a84ee Add functionality to retire tags
All checks were successful
Tests / Tests (pull_request) Successful in 6s
2025-03-19 14:07:15 -07:00
3 changed files with 166 additions and 1 deletions

View File

@ -235,6 +235,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -278,6 +279,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -321,6 +323,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -364,6 +367,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -407,6 +411,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -450,6 +455,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -493,6 +499,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -536,6 +543,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -579,6 +587,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -622,6 +631,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -665,6 +675,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -708,6 +719,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -751,6 +763,7 @@ export type FilterInput =
falsePositiveScore: FloatRangeFilter;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -794,6 +807,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating: FloatRangeFilter;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -837,6 +851,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType: Array<PocketEnum>;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -880,6 +895,51 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic: Array<Scalars["Boolean"]["input"]>;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
isRight?: never;
isRightMiss?: never;
isStraight?: never;
kickAngle?: never;
kickDistance?: never;
make?: never;
marginOfErrorInDegrees?: never;
missAngleInDegrees?: never;
notFilter?: never;
orFilters?: never;
runId?: never;
runLength?: never;
shotDirection?: never;
spinType?: never;
tableSize?: never;
tags?: never;
targetPocketAngle?: never;
targetPocketAngleDirection?: never;
targetPocketDistance?: never;
totalDistance?: never;
userId?: never;
username?: never;
videoId?: never;
}
| {
andFilters?: never;
annotations?: never;
backcut?: never;
bankAngle?: never;
bankDistance?: never;
createdAt?: never;
cueAngleAfterObject?: never;
cueBallSpeed?: never;
cueObjectAngle?: never;
cueObjectDistance?: never;
cueSpeedAfterObject?: never;
difficulty?: never;
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect: Array<Scalars["Boolean"]["input"]>;
isLeft?: never;
isLeftMiss?: never;
@ -923,6 +983,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft: Array<Scalars["Boolean"]["input"]>;
isLeftMiss?: never;
@ -966,6 +1027,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss: Array<Scalars["Boolean"]["input"]>;
@ -1009,6 +1071,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1052,6 +1115,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1095,6 +1159,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1138,6 +1203,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1181,6 +1247,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1224,6 +1291,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1267,6 +1335,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1310,6 +1379,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1353,6 +1423,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1396,6 +1467,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1439,6 +1511,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1482,6 +1555,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1525,6 +1599,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1568,6 +1643,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1611,6 +1687,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1654,6 +1731,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1697,6 +1775,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1740,6 +1819,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1783,6 +1863,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1826,6 +1907,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1869,6 +1951,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1912,6 +1995,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -1955,6 +2039,7 @@ export type FilterInput =
falsePositiveScore?: never;
fargoRating?: never;
intendedPocketType?: never;
isBreakHeuristic?: never;
isDirect?: never;
isLeft?: never;
isLeftMiss?: never;
@ -2143,6 +2228,7 @@ export type Mutation = {
addAnnotationToShot: AddShotAnnotationReturn;
createBucketSet: BucketSetGql;
createUploadStream: CreateUploadStreamReturn;
deleteTags: Scalars["Boolean"]["output"];
deleteVideo: Scalars["Boolean"]["output"];
editProfileImageUri: UserGql;
editShot: EditShotReturn;
@ -2153,6 +2239,7 @@ export type Mutation = {
getHlsInitUploadLink: GetUploadLinkReturn;
getProfileImageUploadLink: GetProfileUploadLinkReturn;
getUploadLink: GetUploadLinkReturn;
retireTags: Scalars["Boolean"]["output"];
setLoggerLevel: Scalars["Boolean"]["output"];
setSegmentDuration: Scalars["Boolean"]["output"];
unfollowUser: UserGql;
@ -2173,6 +2260,11 @@ export type MutationCreateUploadStreamArgs = {
videoMetadata: VideoMetadataInput;
};
export type MutationDeleteTagsArgs = {
tagsToDelete: Array<VideoTagInput>;
videoId: Scalars["Int"]["input"];
};
export type MutationDeleteVideoArgs = {
videoId: Scalars["Int"]["input"];
};
@ -2217,6 +2309,10 @@ export type MutationGetUploadLinkArgs = {
videoId: Scalars["Int"]["input"];
};
export type MutationRetireTagsArgs = {
tagIds: Array<Scalars["Int"]["input"]>;
};
export type MutationSetLoggerLevelArgs = {
level: Scalars["String"]["input"];
path: Scalars["String"]["input"];
@ -2434,6 +2530,10 @@ export type QueryGetUserRelationshipsMatchingArgs = {
userId: Scalars["Int"]["input"];
};
export type QueryGetUserTagsArgs = {
includeRetiredTags?: InputMaybe<Scalars["Boolean"]["input"]>;
};
export type QueryGetUserVideosArgs = {
after?: InputMaybe<Scalars["String"]["input"]>;
filters?: InputMaybe<VideoFilterInput>;
@ -2726,6 +2826,7 @@ export type TagGql = {
__typename?: "TagGQL";
id: Scalars["Int"]["output"];
name: Scalars["String"]["output"];
retired: Scalars["Boolean"]["output"];
tagClasses?: Maybe<Array<TagClassGql>>;
};
@ -3845,6 +3946,15 @@ export type EditShotMutation = {
};
};
export type RetireTagsMutationVariables = Exact<{
tagIds: Array<Scalars["Int"]["input"]> | Scalars["Int"]["input"];
}>;
export type RetireTagsMutation = {
__typename?: "Mutation";
retireTags: boolean;
};
export type GetProfileImageUploadLinkMutationVariables = Exact<{
fileExt?: InputMaybe<Scalars["String"]["input"]>;
}>;
@ -6595,6 +6705,54 @@ export type EditShotMutationOptions = Apollo.BaseMutationOptions<
EditShotMutation,
EditShotMutationVariables
>;
export const RetireTagsDocument = gql`
mutation RetireTags($tagIds: [Int!]!) {
retireTags(tagIds: $tagIds)
}
`;
export type RetireTagsMutationFn = Apollo.MutationFunction<
RetireTagsMutation,
RetireTagsMutationVariables
>;
/**
* __useRetireTagsMutation__
*
* To run a mutation, you first call `useRetireTagsMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useRetireTagsMutation` 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 [retireTagsMutation, { data, loading, error }] = useRetireTagsMutation({
* variables: {
* tagIds: // value for 'tagIds'
* },
* });
*/
export function useRetireTagsMutation(
baseOptions?: Apollo.MutationHookOptions<
RetireTagsMutation,
RetireTagsMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<RetireTagsMutation, RetireTagsMutationVariables>(
RetireTagsDocument,
options,
);
}
export type RetireTagsMutationHookResult = ReturnType<
typeof useRetireTagsMutation
>;
export type RetireTagsMutationResult =
Apollo.MutationResult<RetireTagsMutation>;
export type RetireTagsMutationOptions = Apollo.BaseMutationOptions<
RetireTagsMutation,
RetireTagsMutationVariables
>;
export const GetProfileImageUploadLinkDocument = gql`
mutation getProfileImageUploadLink($fileExt: String = ".png") {
getProfileImageUploadLink(fileExt: $fileExt) {

3
src/operations/tags.gql Normal file
View File

@ -0,0 +1,3 @@
mutation RetireTags($tagIds: [Int!]!) {
retireTags(tagIds: $tagIds)
}

View File

@ -60,7 +60,7 @@ type Query {
after: String = null
filters: VideoFilterInput = null
): VideoHistoryGQL!
getUserTags: [TagGQL!]!
getUserTags(includeRetiredTags: Boolean = false): [TagGQL!]!
getVideo(videoId: Int!, debuggingJson: JSON = null): VideoGQL!
getVideos(videoIds: [Int!]!): [VideoGQL!]!
getFeedVideos(
@ -195,6 +195,7 @@ input FilterInput @oneOf {
isLeftMiss: [Boolean!]
isRightMiss: [Boolean!]
isDirect: [Boolean!]
isBreakHeuristic: [Boolean!]
tableSize: FloatRangeFilter
bankAngle: FloatRangeFilter
bankDistance: FloatRangeFilter
@ -718,6 +719,7 @@ type TagGQL {
id: Int!
name: String!
tagClasses: [TagClassGQL!]
retired: Boolean!
}
type TagClassGQL {
@ -784,6 +786,7 @@ type Mutation {
editUser(input: EditUserInputGQL!): UserGQL!
followUser(followedUserId: Int!): UserGQL!
unfollowUser(followedUserId: Int!): UserGQL!
retireTags(tagIds: [Int!]!): Boolean!
findPrerecordTableLayout(b64Image: String!, videoId: Int!): HomographyInfoGQL
createUploadStream(
videoMetadata: VideoMetadataInput!
@ -797,6 +800,7 @@ type Mutation {
): Boolean!
editUploadStream(videoId: Int!, videoMetadata: VideoMetadataInput!): Boolean!
deleteVideo(videoId: Int!): Boolean!
deleteTags(videoId: Int!, tagsToDelete: [VideoTagInput!]!): Boolean!
}
input CreateBucketSetInput {