Compare commits

..

3 Commits

Author SHA1 Message Date
cfcf1dbcd2 Merge pull request 'Use logged in user for followers' (#106) from kat/use-logged-in-user into master
Reviewed-on: #106
2024-10-30 21:52:42 -06:00
baf139aab5 Merge pull request 'Add support for medals' (#105) from mk/medals into master
Reviewed-on: #105
2024-10-30 17:53:33 -06:00
b3b454ef83 Add support for medals
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-10-30 16:51:35 -07:00
3 changed files with 104 additions and 37 deletions

View File

@@ -1974,6 +1974,15 @@ export type MakePercentageIntervalGql = {
makePercentage: Scalars["Float"]["output"];
};
export type MedalGql = {
__typename?: "MedalGQL";
count: Scalars["Int"]["output"];
};
export type MedalScope =
| { interval: TimeInterval; videoId?: never }
| { interval?: never; videoId: Scalars["Int"]["input"] };
export type MustHaveSetForUploadLinkErr = {
__typename?: "MustHaveSetForUploadLinkErr";
framesPerSecond?: Maybe<Scalars["Boolean"]["output"]>;
@@ -2160,6 +2169,7 @@ export type Query = {
getDeployedConfig: DeployedConfigGql;
getFeedVideos: VideoHistoryGql;
getLoggedInUser?: Maybe<UserGql>;
getMedals: RequestedMedalsGql;
getOrderedShots: GetShotsResult;
getPlayTime: UserPlayTimeGql;
getShotAnnotationTypes: Array<ShotAnnotationTypeGql>;
@@ -2195,6 +2205,11 @@ export type QueryGetFeedVideosArgs = {
limit?: Scalars["Int"]["input"];
};
export type QueryGetMedalsArgs = {
scope: MedalScope;
userId?: InputMaybe<Scalars["Int"]["input"]>;
};
export type QueryGetOrderedShotsArgs = {
filterInput: FilterInput;
ids?: InputMaybe<Array<Scalars["Int"]["input"]>>;
@@ -2269,6 +2284,44 @@ export type QueryWaitForArgs = {
duration: Scalars["Float"]["input"];
};
export type RequestedMedalsGql = {
__typename?: "RequestedMedalsGQL";
dayStreak2?: Maybe<MedalGql>;
dayStreak3?: Maybe<MedalGql>;
dayStreak4?: Maybe<MedalGql>;
dayStreak5?: Maybe<MedalGql>;
dayStreak6?: Maybe<MedalGql>;
dayStreak7?: Maybe<MedalGql>;
dayStreak14?: Maybe<MedalGql>;
dayStreak21?: Maybe<MedalGql>;
dayStreak30?: Maybe<MedalGql>;
dayStreak60?: Maybe<MedalGql>;
dayStreak90?: Maybe<MedalGql>;
distanceOver66?: Maybe<MedalGql>;
distanceOver78?: Maybe<MedalGql>;
distanceOver90?: Maybe<MedalGql>;
runLength3?: Maybe<MedalGql>;
runLength5?: Maybe<MedalGql>;
runLength8?: Maybe<MedalGql>;
runLength10?: Maybe<MedalGql>;
runLength15?: Maybe<MedalGql>;
runLength20?: Maybe<MedalGql>;
runLength25?: Maybe<MedalGql>;
runLength30?: Maybe<MedalGql>;
runLength40?: Maybe<MedalGql>;
runLength50?: Maybe<MedalGql>;
totalMakes25?: Maybe<MedalGql>;
totalMakes50?: Maybe<MedalGql>;
totalMakes75?: Maybe<MedalGql>;
totalMakes100?: Maybe<MedalGql>;
totalMakes200?: Maybe<MedalGql>;
totalMakes300?: Maybe<MedalGql>;
totalMakes400?: Maybe<MedalGql>;
totalMakes500?: Maybe<MedalGql>;
totalMakes750?: Maybe<MedalGql>;
totalMakes1000?: Maybe<MedalGql>;
};
export type SegmentAlreadyUploadedErr = {
__typename?: "SegmentAlreadyUploadedErr";
segmentId: Scalars["Int"]["output"];
@@ -3182,17 +3235,8 @@ export type FollowUserMutation = {
followUser: {
__typename?: "UserGQL";
username: string;
id: number;
following?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
}> | null;
followers?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
}> | null;
following?: Array<{ __typename?: "UserGQL"; id: number }> | null;
followers?: Array<{ __typename?: "UserGQL"; id: number }> | null;
};
};
@@ -3205,17 +3249,8 @@ export type UnfollowUserMutation = {
unfollowUser: {
__typename?: "UserGQL";
username: string;
id: number;
following?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
}> | null;
followers?: Array<{
__typename?: "UserGQL";
id: number;
username: string;
}> | null;
following?: Array<{ __typename?: "UserGQL"; id: number }> | null;
followers?: Array<{ __typename?: "UserGQL"; id: number }> | null;
};
};
@@ -3227,7 +3262,6 @@ export type GetUserFollowingFollowersQuery = {
__typename?: "Query";
getLoggedInUser?: {
__typename?: "UserGQL";
id: number;
following?: Array<{
__typename?: "UserGQL";
id: number;
@@ -5384,14 +5418,11 @@ export const FollowUserDocument = gql`
mutation followUser($followedUserId: Int!) {
followUser(followedUserId: $followedUserId) {
username
id
following {
id
username
}
followers {
id
username
}
}
}
@@ -5443,14 +5474,11 @@ export const UnfollowUserDocument = gql`
mutation unfollowUser($followedUserId: Int!) {
unfollowUser(followedUserId: $followedUserId) {
username
id
following {
id
username
}
followers {
id
username
}
}
}
@@ -5501,7 +5529,6 @@ export type UnfollowUserMutationOptions = Apollo.BaseMutationOptions<
export const GetUserFollowingFollowersDocument = gql`
query getUserFollowingFollowers {
getLoggedInUser {
id
following {
id
username

View File

@@ -91,14 +91,11 @@ query GetUserTags {
mutation followUser($followedUserId: Int!) {
followUser(followedUserId: $followedUserId) {
username
id
following {
id
username
}
followers {
id
username
}
}
}
@@ -106,21 +103,17 @@ mutation followUser($followedUserId: Int!) {
mutation unfollowUser($followedUserId: Int!) {
unfollowUser(followedUserId: $followedUserId) {
username
id
following {
id
username
}
followers {
id
username
}
}
}
query getUserFollowingFollowers {
getLoggedInUser {
id
following {
id
username

View File

@@ -9,6 +9,7 @@ type Query {
videoId: ID!
intervalDuration: Int! = 300
): [MakePercentageIntervalGQL!]!
getMedals(scope: MedalScope!, userId: Int = null): RequestedMedalsGQL!
getOrderedShots(
filterInput: FilterInput!
ids: [Int!] = null
@@ -267,6 +268,52 @@ type MakePercentageIntervalGQL {
elapsedTime: Float!
}
type RequestedMedalsGQL {
distanceOver66: MedalGQL
distanceOver78: MedalGQL
distanceOver90: MedalGQL
runLength3: MedalGQL
runLength5: MedalGQL
runLength8: MedalGQL
runLength10: MedalGQL
runLength15: MedalGQL
runLength20: MedalGQL
runLength25: MedalGQL
runLength30: MedalGQL
runLength40: MedalGQL
runLength50: MedalGQL
totalMakes25: MedalGQL
totalMakes50: MedalGQL
totalMakes75: MedalGQL
totalMakes100: MedalGQL
totalMakes200: MedalGQL
totalMakes300: MedalGQL
totalMakes400: MedalGQL
totalMakes500: MedalGQL
totalMakes750: MedalGQL
totalMakes1000: MedalGQL
dayStreak2: MedalGQL
dayStreak3: MedalGQL
dayStreak4: MedalGQL
dayStreak5: MedalGQL
dayStreak6: MedalGQL
dayStreak7: MedalGQL
dayStreak14: MedalGQL
dayStreak21: MedalGQL
dayStreak30: MedalGQL
dayStreak60: MedalGQL
dayStreak90: MedalGQL
}
type MedalGQL {
count: Int!
}
input MedalScope @oneOf {
videoId: Int
interval: TimeInterval
}
type GetShotsResult {
shots: [ShotGQL!]!
count: Int