Compare commits

...

7 Commits

Author SHA1 Message Date
36b6804719 Privacy
All checks were successful
Tests / Tests (pull_request) Successful in 10s
2024-11-12 14:15:19 +01:00
0120c15064 Merge pull request 'Add count to GetShotsWithJustIds operation return' (#127) from loewy/add-count-to-getshots-with-just-ids into master
Reviewed-on: #127
2024-11-11 21:13:19 -07:00
9cc99d956a add countRespectsLimit argument
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-11-11 20:07:58 -08:00
985fa8b8e5 add count to return for get shots with just ids
All checks were successful
Tests / Tests (pull_request) Successful in 14s
2024-11-11 19:54:10 -08:00
c4868e7ebe Add null default 2024-11-11 19:02:13 -08:00
58e1c18034 Merge pull request 'Add filters for getPlayTime' (#126) from mk/add-filter-for-play-time into master
Reviewed-on: #126
2024-11-11 19:52:36 -07:00
592dea0ca2 Add filters for getPlayTime
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-11-11 18:50:00 -08:00
5 changed files with 129 additions and 6 deletions

View File

@@ -2227,6 +2227,7 @@ export type QueryGetOrderedShotsArgs = {
}; };
export type QueryGetPlayTimeArgs = { export type QueryGetPlayTimeArgs = {
filters?: InputMaybe<VideoFilterInput>;
userId: Scalars["Int"]["input"]; userId: Scalars["Int"]["input"];
}; };
@@ -2607,6 +2608,7 @@ export type UserRelationshipsResult = {
}; };
export type VideoFilterInput = { export type VideoFilterInput = {
createdAt?: InputMaybe<DateRangeFilter>;
isStreamCompleted?: InputMaybe<Scalars["Boolean"]["input"]>; isStreamCompleted?: InputMaybe<Scalars["Boolean"]["input"]>;
requireCursorCompletion?: Scalars["Boolean"]["input"]; requireCursorCompletion?: Scalars["Boolean"]["input"];
}; };
@@ -2810,6 +2812,7 @@ export type VideoCardFieldsFragment = {
updatedAt?: any | null; updatedAt?: any | null;
startTime?: any | null; startTime?: any | null;
endTime?: any | null; endTime?: any | null;
private: boolean;
elapsedTime?: number | null; elapsedTime?: number | null;
tableSize: number; tableSize: number;
owner?: { owner?: {
@@ -2862,6 +2865,7 @@ export type GetVideoFeedQuery = {
updatedAt?: any | null; updatedAt?: any | null;
startTime?: any | null; startTime?: any | null;
endTime?: any | null; endTime?: any | null;
private: boolean;
elapsedTime?: number | null; elapsedTime?: number | null;
tableSize: number; tableSize: number;
owner?: { owner?: {
@@ -3006,12 +3010,14 @@ export type GetShotsWithJustIdsQueryVariables = Exact<{
filterInput: FilterInput; filterInput: FilterInput;
shotsOrdering?: InputMaybe<GetShotsOrdering>; shotsOrdering?: InputMaybe<GetShotsOrdering>;
limit?: InputMaybe<Scalars["Int"]["input"]>; limit?: InputMaybe<Scalars["Int"]["input"]>;
countRespectsLimit?: InputMaybe<Scalars["Boolean"]["input"]>;
}>; }>;
export type GetShotsWithJustIdsQuery = { export type GetShotsWithJustIdsQuery = {
__typename?: "Query"; __typename?: "Query";
getOrderedShots: { getOrderedShots: {
__typename?: "GetShotsResult"; __typename?: "GetShotsResult";
count?: number | null;
shots: Array<{ __typename?: "ShotGQL"; id: number; videoId: number }>; shots: Array<{ __typename?: "ShotGQL"; id: number; videoId: number }>;
}; };
}; };
@@ -3310,6 +3316,7 @@ export type GetLoggedInUserQuery = {
activeVideoId?: number | null; activeVideoId?: number | null;
createdAt?: any | null; createdAt?: any | null;
updatedAt?: any | null; updatedAt?: any | null;
videosPrivateByDefault?: boolean | null;
} | null; } | null;
}; };
@@ -3437,6 +3444,25 @@ export type DoesUsernameExistQuery = {
doesUsernameExist: boolean; doesUsernameExist: boolean;
}; };
export type EditUserMutationVariables = Exact<{
username?: InputMaybe<Scalars["String"]["input"]>;
fargoRating?: InputMaybe<Scalars["Int"]["input"]>;
videosPrivateByDefault?: InputMaybe<Scalars["Boolean"]["input"]>;
}>;
export type EditUserMutation = {
__typename?: "Mutation";
editUser: {
__typename?: "UserGQL";
id: number;
firebaseUid?: string | null;
username: string;
fargoRating?: number | null;
updatedAt?: any | null;
videosPrivateByDefault?: boolean | null;
};
};
export type GetStreamMonitoringDetailsQueryVariables = Exact<{ export type GetStreamMonitoringDetailsQueryVariables = Exact<{
videoId: Scalars["Int"]["input"]; videoId: Scalars["Int"]["input"];
debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>; debuggingJson?: InputMaybe<Scalars["JSON"]["input"]>;
@@ -4120,6 +4146,7 @@ export const VideoCardFieldsFragmentDoc = gql`
updatedAt updatedAt
startTime startTime
endTime endTime
private
elapsedTime elapsedTime
screenshotUri screenshotUri
stream { stream {
@@ -5047,12 +5074,15 @@ export const GetShotsWithJustIdsDocument = gql`
$filterInput: FilterInput! $filterInput: FilterInput!
$shotsOrdering: GetShotsOrdering $shotsOrdering: GetShotsOrdering
$limit: Int $limit: Int
$countRespectsLimit: Boolean
) { ) {
getOrderedShots( getOrderedShots(
filterInput: $filterInput filterInput: $filterInput
shotsOrdering: $shotsOrdering shotsOrdering: $shotsOrdering
limit: $limit limit: $limit
countRespectsLimit: $countRespectsLimit
) { ) {
count
shots { shots {
id id
videoId videoId
@@ -5076,6 +5106,7 @@ export const GetShotsWithJustIdsDocument = gql`
* filterInput: // value for 'filterInput' * filterInput: // value for 'filterInput'
* shotsOrdering: // value for 'shotsOrdering' * shotsOrdering: // value for 'shotsOrdering'
* limit: // value for 'limit' * limit: // value for 'limit'
* countRespectsLimit: // value for 'countRespectsLimit'
* }, * },
* }); * });
*/ */
@@ -5519,6 +5550,7 @@ export const GetLoggedInUserDocument = gql`
activeVideoId activeVideoId
createdAt createdAt
updatedAt updatedAt
videosPrivateByDefault
} }
} }
`; `;
@@ -6170,6 +6202,70 @@ export type DoesUsernameExistQueryResult = Apollo.QueryResult<
DoesUsernameExistQuery, DoesUsernameExistQuery,
DoesUsernameExistQueryVariables DoesUsernameExistQueryVariables
>; >;
export const EditUserDocument = gql`
mutation editUser(
$username: String
$fargoRating: Int
$videosPrivateByDefault: Boolean
) {
editUser(
input: {
username: $username
fargoRating: $fargoRating
videosPrivateByDefault: $videosPrivateByDefault
}
) {
id
firebaseUid
username
fargoRating
updatedAt
videosPrivateByDefault
}
}
`;
export type EditUserMutationFn = Apollo.MutationFunction<
EditUserMutation,
EditUserMutationVariables
>;
/**
* __useEditUserMutation__
*
* To run a mutation, you first call `useEditUserMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useEditUserMutation` 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 [editUserMutation, { data, loading, error }] = useEditUserMutation({
* variables: {
* username: // value for 'username'
* fargoRating: // value for 'fargoRating'
* videosPrivateByDefault: // value for 'videosPrivateByDefault'
* },
* });
*/
export function useEditUserMutation(
baseOptions?: Apollo.MutationHookOptions<
EditUserMutation,
EditUserMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<EditUserMutation, EditUserMutationVariables>(
EditUserDocument,
options,
);
}
export type EditUserMutationHookResult = ReturnType<typeof useEditUserMutation>;
export type EditUserMutationResult = Apollo.MutationResult<EditUserMutation>;
export type EditUserMutationOptions = Apollo.BaseMutationOptions<
EditUserMutation,
EditUserMutationVariables
>;
export const GetStreamMonitoringDetailsDocument = gql` export const GetStreamMonitoringDetailsDocument = gql`
query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) { query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) {
getVideo(videoId: $videoId, debuggingJson: $debuggingJson) { getVideo(videoId: $videoId, debuggingJson: $debuggingJson) {

View File

@@ -56,6 +56,7 @@ fragment VideoCardFields on VideoGQL {
updatedAt updatedAt
startTime startTime
endTime endTime
private
elapsedTime elapsedTime
screenshotUri screenshotUri
stream { stream {

View File

@@ -66,12 +66,15 @@ query GetShotsWithJustIds(
$filterInput: FilterInput! $filterInput: FilterInput!
$shotsOrdering: GetShotsOrdering $shotsOrdering: GetShotsOrdering
$limit: Int $limit: Int
$countRespectsLimit: Boolean
) { ) {
getOrderedShots( getOrderedShots(
filterInput: $filterInput filterInput: $filterInput
shotsOrdering: $shotsOrdering shotsOrdering: $shotsOrdering
limit: $limit limit: $limit
countRespectsLimit: $countRespectsLimit
) { ) {
count
shots { shots {
id id
videoId videoId

View File

@@ -41,6 +41,7 @@ query getLoggedInUser {
activeVideoId activeVideoId
createdAt createdAt
updatedAt updatedAt
videosPrivateByDefault
} }
} }
@@ -135,3 +136,24 @@ query getUserFollowingFollowers {
query doesUsernameExist($candidateUsername: String!) { query doesUsernameExist($candidateUsername: String!) {
doesUsernameExist(candidateUsername: $candidateUsername) doesUsernameExist(candidateUsername: $candidateUsername)
} }
mutation editUser(
$username: String
$fargoRating: Int
$videosPrivateByDefault: Boolean
) {
editUser(
input: {
username: $username
fargoRating: $fargoRating
videosPrivateByDefault: $videosPrivateByDefault
}
) {
id
firebaseUid
username
fargoRating
updatedAt
videosPrivateByDefault
}
}

View File

@@ -46,7 +46,7 @@ type Query {
limit: Int = 100 limit: Int = 100
after: String = null after: String = null
): UserRelationshipsResult! ): UserRelationshipsResult!
getPlayTime(userId: Int!): UserPlayTimeGQL! getPlayTime(userId: Int!, filters: VideoFilterInput = null): UserPlayTimeGQL!
getUserVideos( getUserVideos(
userId: Int = null userId: Int = null
limit: Int! = 5 limit: Int! = 5
@@ -624,6 +624,12 @@ type UserPlayTimeGQL {
totalSeconds: Float! totalSeconds: Float!
} }
input VideoFilterInput {
isStreamCompleted: Boolean = null
requireCursorCompletion: Boolean! = true
createdAt: DateRangeFilter = null
}
type VideoHistoryGQL { type VideoHistoryGQL {
videos: [VideoGQL!]! videos: [VideoGQL!]!
pageInfo: PageInfoGQL! pageInfo: PageInfoGQL!
@@ -634,11 +640,6 @@ type PageInfoGQL {
endCursor: String endCursor: String
} }
input VideoFilterInput {
isStreamCompleted: Boolean = null
requireCursorCompletion: Boolean! = true
}
type TagGQL { type TagGQL {
name: String! name: String!
id: Int! id: Int!